从Money中删除小数分隔符

时间:2014-09-20 17:41:00

标签: sql-server tsql

我有这个问题:

SELECT CONVERT(varchar, CAST(987654321 AS money), 1)

现在的结果是:

987,654,321.00

但我想得到:

987,654,321

我想在我的查询中执行此操作,我该怎么办?

2 个答案:

答案 0 :(得分:1)

我绝对不会这样做,但如果您绝对需要,这将有效:

DECLARE @value varchar(50)

SET @value = CONVERT(varchar(50), CAST(987654321 AS money), 1)
SELECT  LEFT(@value, len(@value) - 3)

这将返回987,654,321

答案 1 :(得分:1)

SQL Server货币数据类型没有小数分隔符。它是数据库中的二进制结构。您似乎可能希望将货币数据类型转换为T-SQL中的整数并添加分隔符。在这种情况下,尝试:

SELECT REPLACE(CONVERT(varchar, CAST(987654321 AS money), 1), '.00', '');