使用逗号创建一个select语句输出一个数字

时间:2017-06-08 20:37:29

标签: sql sql-server

我正在使用SQL Server,并试图弄清楚如何使select语句输出一个用逗号分隔的数字。我只能找到如何用逗号将数字转换为数字,这不是我想要的。下面的代码是我试图用逗号输出的代码。现在,当您执行该语句时,它返回值750000.00,我希望它返回750,000.00。

代码:

select max(c.salary) as MaxSalary
from #Career c inner join
     #Member m
    on c.Member_ID = m.Member_ID
where m.age < 35

4 个答案:

答案 0 :(得分:2)

您可以将FORMAT()用于SQL Server 2012及更高版本

select FORMAT(750000.00, 'N', 'en-us') AS 'Numeric Format' 


declare @table table(salary decimal(16,4))
insert into @table
values
(1234.00),
(64423.55)

select FORMAT(sum(salary), 'N', 'en-us') AS 'Numeric Format' 
from @table

--or using your tables
select FORMAT(max(c.salary), 'N', 'en-us') AS 'Numeric Format' 
from #Career c inner join
     #Member m
    on c.Member_ID = m.Member_ID
where m.age < 35

答案 1 :(得分:1)

这可能是一种老式的方式,但转换为金钱然后转换为varchar是传统的方法:

select convert(varchar(255), convert(money, max(salary)), 1) as MaxSalary

答案 2 :(得分:0)

如果数据集最小,可以使用格式

select format(75000.00, 'N')

你可以这样做:

select Format(max(c.salary),'N') as MaxSalary
from #Career c inner join
  #Member m
  on c.Member_ID = m.Member_ID
where m.age < 35

答案 3 :(得分:0)

假设SQL Server 2012 +,以下内容可以满足您的需求:

  SELECT FORMAT([COLUMN], 'N#')

其中#是小数位数。将N0设为0,N2设为2,等等。

SQL Server 2008 R2:

  SELECT REPLACE(CONVERT(varchar(20), (CAST([COLUMN] AS MONEY)), 1), '.00', '')