在SQL SERVER中,cast和convert函數(shù)都可用于類型轉(zhuǎn)換,其功能是相同的,
只是語法不同.
cast一般更容易使用,convert的優(yōu)點(diǎn)是可以格式化日期和數(shù)值.
select CAST('123' as int) -- 123
select CONVERT(int, '123') -- 123
select CAST(123.4 as int) -- 123
select CONVERT(int, 123.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), @Num, 0) -- 1234.56
select CONVERT(varchar(20), @Num, 1) -- 1,234.56
select CONVERT(varchar(20), @Num, 2) -- 1234.5600
如果把 int類型的數(shù)據(jù) 組合在varchar 里面插入, 需要強(qiáng)制轉(zhuǎn)化一下
例如 '插入'+123+'ID信息' 需要寫成 '插入'+cast(123 as varchar)+'ID信息'
更多信息請(qǐng)查看IT技術(shù)專欄