SQL SERVER中强制类型转换cast和convert的区别

在SQL SERVER中,cast和convert函数都可用于类型转换,其功能是相同的,

只是语法不同.

cast一般更容易使用,convert的优点是可以格式化日期和数值.

代码
select CAST('123' as int)   -- 123
select CONVERT(int'123')  -- 123

select CAST(123.4 as int)   -- 123
select CONVERT(int123.4)  -- 123 

select CAST('123.4' as int)
select CONVERT(int'123.4')
-- Conversion failed when converting the varchar value '123.4' to data type int.

select CAST('123.4' as decimal)  -- 123
select CONVERT(decimal'123.4'-- 123 


select CAST('123.4' as decimal(9,2))  -- 123.40
select CONVERT(decimal(9,2), '123.4'-- 123.40


declare @Num money
set @Num = 1234.56
select CONVERT(varchar(20), @Num0)  -- 1234.56
select CONVERT(varchar(20), @Num1)  -- 1,234.56
select CONVERT(varchar(20), @Num2)  -- 1234.5600

 

 

 

 

posted @ 2011-02-15 16:28  Master HaKu  阅读(83750)  评论(0编辑  收藏  举报