在 SQL Server 中为字符串值添加千位分隔符

时间:2021-02-19 12:16:13

标签: sql sql-server tsql format

我正在解析一个包含 varchar 格式的(钱)值的字符串。

格式总是这样:12345,75 (varchar)。因此,另一个输入值可能是 32323232,98 等等...

所需的输出 = 12.345,75(不必作为 varchar 输出)。
所以我需要的是点作为千位分隔符,和一个逗号分隔两个小数(输入值总是有 2 个小数)。

我的尝试:

DECLARE @Num varchar(50)

SELECT FORMAT(CONVERT(numeric(10,2), REPLACE(@Num,',','.')), @Num, '#.00')

错误:

<块引用>

不支持函数调用中提供的区域性参数“#.00”。

使用 MS SQL Azure 2019

1 个答案:

答案 0 :(得分:0)

'nl-nl' 文化正是您想要的。因此,尝试使用 format() 的第三个参数:

select format(1234567.888, '#,#.00', 'nl-nl')