【发布时间】:2015-04-06 11:11:34
【问题描述】:
我正在使用 SQL Server 2014,并且我有以下运行良好的查询:
USE MyDatabase
SELECT [Room Nights],
COUNT([Room Nights]) AS 'Count of RN'
FROM HOLDINGS2
GROUP BY [Room Nights]
输出如下:
Room Nights Count of RN
1 3
4 10
5 6
7 25
现在我想显示另一列,它给出了Count of RN 的百分比分布。因此,我的输出需要是这样的:
Room Nights Count of RN % Distribution
1 3 6.8
4 10 22.7
5 6 13.6
7 25 56.8
我查看了以下讨论以尝试找出解决方案: percent distribution with counted values.
我对现有代码进行了以下修改,但它不起作用!我在% Distribution 列中只有零。
USE MyDatabase
SELECT [Room Nights],
COUNT([Room Nights]) AS 'Count of RN',
CAST(COUNT([Room Nights])/(SELECT COUNT([Room Nights])*100. FROM HOLDINGS2) AS DECIMAL (9,0)) AS '% Distribution'
FROM HOLDINGS2
GROUP BY [Room Nights]
基本上,% Distribution 列应采用 Count of RN 并将其除以 TOTAL Count of RN。
【问题讨论】:
标签: sql sql-server count sql-server-2014