-3

我尝试按组求和,并计算每组占多少百分比。SUMIF使用 the很容易,GROUP BY但后来我坚持SUM (ALL)- 我想我可以尝试这样做,SUM(CASE IF GROUP='A' THEN END) + SUM(CASE IF GROUP='B'...但如果有更多 GROUP:(

SELECT GROUP, SUM(SALES), SUM(SALES)/TOTAL FROM DATABASE.SALETABLE

在此处输入图像描述

4

1 回答 1

3

您可以使用SUM ... OVER()来获取总销售额。

SELECT [Group],
       SUM(SALES) AS [Sales],
       100.0 * SUM(SALES) / SUM(SUM(SALES)) OVER () AS [%]
FROM YourTable
GROUP BY [Group]

SQL小提琴

于 2013-07-16T17:20:29.350 回答