【发布时间】:2015-10-15 04:00:35
【问题描述】:
我只想在德国获得正确的数字格式,所以我需要将逗号显示为小数点分隔符而不是点。但是这个……
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 中这样做?
-
值 '1,025,040.24' 的预期结果是什么,你觉得呢?
-
@Jamiec:因为它是一个视图。但你是对的,它可以在客户端应用程序中完成。但在这种情况下,我想控制数据库中的所有内容。
-
@PankajExplorer - 大多数使用
.作为千位分隔符的文化都使用,作为小数分隔符(是的,正好相反) -
我在我的数据库中运行您的查询它返回我 1,025,040.24 为什么?
标签: sql-server tsql sql-server-2005 type-conversion currency