黑马程序员技术交流社区

标题: sql中cast与convert的区别 [打印本页]

作者: 李海军    时间: 2012-4-23 12:42
标题: sql中cast与convert的区别
如题视频中老师没有讲这两个语句的区别,不知道怎么用了 求解惑
作者: z4226797    时间: 2012-4-23 14:02
CONVERT是专对SQL Server使用的,使日期与时间值,小数之间转换具有更宽的灵活性。
CAST更具ANSI标准的功能
作者: 鲍晨    时间: 2012-4-23 14:53
select CAST('123'as int),CAST('2012-04-23'as datetime),CONVERT(nvarchar(50),123)
cast和convert方法里面的参数是不一样的表达方式的,cast是前面是要转换的值,然后是as,后面是要转换成的类型
convert是前面是要转换的数据类型,后面是被转换值
另外convert可以按照一定的格式输出,所以一般用convert比较好
作者: ︻◣㊣袏邊愛☆    时间: 2012-4-24 18:32
学习了谢谢!
作者: 许庭洲    时间: 2012-4-27 11:09
使用 CAST:
CAST ( expression AS data_type )
使用 CONVERT:
CONVERT (data_type[(length)], expression [, style])
可以看到,convert比CAST多了一个style,在转化成日期类型时,因为需要格式要求,cast就不合适了。
cast一般更容易使用,convert的优点是可以格式化日期和数值。举几个小例子:
select  CAST('123' as int)  ------123
select  CONVERT(int,'123')------123

select  CAST(123.4 as int)  ------123
select  CONVERT(int,123.4)------123







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2