我遇到一个varchar
浮点数,例如2.045.030,需要从float
转换为varchar
的问题。
当尝试使用任何try_parse
,try_convert
,try_cast
函数时,我得到的是NULL而不是转换后的值。
这是在SQL Server数据库上。
有人有类似的问题吗?
答案 0 :(得分:3)
似乎这些值的格式为.
作为千位分隔符(而,
作为小数点),因此删除这些点并用小数点替换逗号:
DECLARE @num varchar(50) = '2.045.030,725';
SELECT CAST(REPLACE(REPLACE(@num, '.', ''), ',', '.') AS float);
结果:2045030.725