将货币格式化为数百万美元的SQL Server



任何人都可以帮助我格式化我的美元数据成数百万美元的SQL Server吗?

3,000,000
--> $3M

我有这个,但它不起作用

SELECT     '$' + SUM(Sales_Information.Sales_in_Dollars / 1000000) 
                      AS [Sales in Millions]

这样做给我#Error

format(SUM(Sales_Information.Sales_in_Dollars / 1000000)

FORMAT函数具有修剪数千的方法

每个逗号将显示的值降低1000

,例如

select format(3000000,'$0,,,.000B')
select format(3000000,'$0,,M')
select format(3000000,'$0,K')

(请注意,我必须使用小数在数十亿美元中显示300万)

输出:

$ 0.003B
$ 3M
$ 3000K

尝试这个....

SELECT '$' + CONVERT(VARCHAR(100),CAST(3000000 AS MONEY),1)
RESULT:  $3,000,000.00

只需将您的货币与1000000划分,然后在其结尾添加'M'

只需根据您的要求进行一些编辑:


CONCAT('$', ROUND(SUM(Sales_Information.Sales_in_Dollars) / 1000000), ' million)

对我有用的人是:concat('$',rond(sum(sales_information.sales_in_dollars)/1000000),'m')

最新更新