没有合适的资源?快使用搜索试试~ 我知道了~
首页SQL中convert和cast的区别
SQL中convert和cast的区别
需积分: 44 2.1k 浏览量
更新于2023-05-22
评论 1
收藏 21KB DOC 举报
SQL中convert和cast的区别,SQL中convert和cast的区别,SQL中convert和cast的区别,SQL中convert和cast的区别
资源详情
资源评论
资源推荐

如果 SQL Server 程序员想将表达式从一种换为另一种,他可以从 SQL Server 7 和 2000 中自带的两
种功能中做出选择。在存储过程或其他情况下,我们常常需要将数据从 datetime 型转化成 varchar 型;
CONVERT 和 CAST 就可以用于这种情况。
由于 SQL Server 提供两种功能,因此应该选择哪种功能或应该在哪种情况下使用该功能就很容易让人
困惑了。CONVERT 是专对 SQL Server 使用的,使日期与时间值,小数之间转换具有更宽的灵活性。
CAST 是两种功能中更具 ANSI 标准的功能,即虽然更具便携性(比如,使用 CAST 的函数能更容易的
被其它数据库软件使用),但功能相对弱一些。不过,当小数转化为数值,并保留原始表达式中的小数数
值时,仍然需要使用 CAST。因此,我建议首先使用 CAST,如果遇到必须使用 CONVERT 的情况时再使
用 CONVERT。
CAST 和 CONVERT 还能联合使用,达到特殊的效果。比如,在 current date 下生成 char 变量一般使用
以下方法:
SELECT CONVERT(CHAR(10), CURRENT_TIMESTAMP, 102)
(102 表明使用了 ANSI 日期模式,即 yy.mm.dd 型)
然而,如果你希望将这个变量明确生成为 datetime 或 smalldatetime 变量,以此在特定的数据库栏中兼
容,那么你可以使用以下语句:
SELECT CAST(CONVERT(CHAR(10),CURRENT_TIMESTAMP,102) AS DATETIME)
返回值将是 yy.mm.dd 00:00:00(如 12:00AM 作为时间戳;


















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0