我有这个问题:
SELECT CONVERT(varchar, CAST(987654321 AS money), 1)
现在的结果是:
987,654,321.00
但我想得到:
987,654,321
我想在我的查询中执行此操作,我该怎么办?
答案 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', '');