我在表中有一个排序的数据
F1 F2 F3 F4
A M X 1
A N Y 2
A P X 3
B M X 3
B N Y 1
B P X 5
但我想要 F1 列中每一行的子值计数。像这样
F1 F2 F3 F4 Sub Total
A M X 1 6
A N Y 2 6
A P X 3 6
B M X 3 9
B N Y 1 9
B P X 5 9
我试着求和
select *, sum(count) from table group by F1, F2, F3; 但这并没有在最后一列中给出总数。
请帮我
一种方法是对 F4 的总和进行子选择(这是我为了得到 6 和 9 所能想到的唯一解释)
如果您的 DBMS 支持窗口函数:
您没有指定 RDBMS,但这里有一个使用 SQL Server 的解决方案。
带有 subselect 的@Lennart 查询的另一个版本:
或者
db<>在这里摆弄