我需要在sql命令中将数值转换为nvarchar。
任何人都可以帮助我。
答案 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)
如果结果的文化无关紧要,或者我们只讨论整数值,CONVERT
或CAST
就可以了。
但是,如果结果必须与特定文化相匹配,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层的问题。