如何在sql命令中将数字转换为nvarchar

时间:2011-12-07 06:45:15

标签: sql sql-server-2005

我需要在sql命令中将数值转换为nvarchar。

任何人都可以帮助我。

4 个答案:

答案 0 :(得分:27)

select convert(nvarchar(255), 4343)

应该做的伎俩。

答案 1 :(得分:12)

declare @MyNumber int
set @MyNumber = 123
select 'My number is ' + CAST(@MyNumber as nvarchar(20))

答案 2 :(得分:4)

declare @MyNumber float 
set @MyNumber = 123.45 
select 'My number is ' + CAST(@MyNumber as nvarchar(max))

答案 3 :(得分:1)

如果结果的文化无关紧要,或者我们只讨论整数值,CONVERTCAST就可以了。

但是,如果结果必须与特定文化相匹配,FORMAT可能是要执行的功能:

DECLARE @value DECIMAL(19,4) = 1505.5698
SELECT CONVERT(NVARCHAR, @value)        -->  1505.5698
SELECT FORMAT(@value, 'N2', 'en-us')    --> 1,505.57
SELECT FORMAT(@value, 'N2', 'de-de')    --> 1.505,57

有关FORMAT的更多信息,请参阅here

当然,格式化结果应该是软件UI层的问题。