gpt4 book ai didi

sql-server - 显示逗号而不是点作为小数分隔符

转载 作者:行者123 更新时间:2023-12-02 14:07:09 24 4
gpt4 key购买 nike

我只是想在德国获得正确的数字格式,所以我需要将逗号显示为小数分隔符而不是点。但这...

DECLARE @euros money
SET @euros = 1025040.2365
SELECT CONVERT(varchar(30), @euros, 1)

显示 1,025,040.24 而不是 1.025.040,24(或 1025040,24)。在 C# 中,提供适当的 CultureInfo 很简单,但在 T-SQL 中如何做到这一点?

我真的需要使用REPLACE吗?但即使如此,如何正确替换1,025,040.24

最佳答案

为了提供适当的区域性信息,SQL 2012 中提供了 FORMAT() 函数。这是一个例子:

declare @f float = 123456.789;

select
[raw] = str(@f,20,3)
,[standard] = cast(format(@f, 'N', 'en-US') as varchar(20))
,[German] = cast(format(@f, 'N', 'de-DE') as varchar(20))

返回

raw                  |standard   |German     |
---------------------|-----------|-----------|
123456.789 |123,456.79 |123.456,79 |

您还可以在第二个参数中指定自定义格式字符串,其规则与 .NET 相同。

文档:https://msdn.microsoft.com/en-US/library/hh213505.aspx

关于sql-server - 显示逗号而不是点作为小数分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31611221/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com