显示列值的逗号

时间:2014-04-04 07:58:46

标签: sql sql-server sql-server-2008

我正在使用此查询显示带有money数据类型的列,如何在此基础上插入逗号。

'$ '+CONVERT(varchar,CONVERT(decimal(10,0), CONVERT(money,B2.Total_Amount)),1) as Total_Amount,
'$ '+CONVERT(varchar,CONVERT(decimal(10,0), CONVERT(money,B2.Monthly_Amount )),1) as Monthly_Amount

输出

1500

预期产出:

1,500

3 个答案:

答案 0 :(得分:1)

你可以用这个来实现这个目标:

select replace(convert(varchar,convert(Money, B2.Total_Amount),1),'.00','')

但你应该这样做

那是显示层的一部分

答案 1 :(得分:1)

declare @amount money=10000.00

select replace(convert(varchar,convert(Money, @amount),1),'.00','') =>10,000

在sql 2012中,您可以使用Format()

FORMAT(@amount ,'#,0.0000')

答案 2 :(得分:0)

我认为你需要这个

'$ '+ Replace(CONVERT(varchar,CAST(B2.Total_Amount AS money),1) ,'.00','') as Total_Amount,
'$ '+ Replace(CONVERT(varchar, CAST(B2.Monthly_Amount As money),1),'.00','') as Monthly_Amount

如果B2.Monthly_Amount是

1987654321

然后Op将

1,987,654,321