我有一个数据集,如下所示:
Location Name Amount
1 Bob 5
1 Phil 1
1 Bob 2
West Phil 2
West Phil 3 我想要一个列,将在位置和名称,并合计所有的数据,有相同的价值没有分组的数量。位置和名称都可以有很大的不同。它看起来像这样:
Location Name Amount Total
1 Bob 5 7
1 Phil 1 1
1 Bob 2 7
West Phil 2 5
West Phil 3 5我不知道在这里该做些什么。如果这是在Excel中,使用SUMIFS会非常简单!感谢所有的帮助!
发布于 2020-04-23 02:26:14
您可以使用标量子查询来获得该总和。
例如:
select *,
(select sum(Amount) from my_table a
where a.Location = t.Location and a.Name = t.Name) as Total
from my_table t发布于 2020-04-23 02:28:42
如果您的MySql版本支持窗口函数,则可以在没有分组的情况下进行分组:
select *, sum(amount) over (partition by location, name) total
from tablename在没有窗口函数的情况下,可以用子查询返回总数:
select t.*, (select sum(amount) from tablename where location = t.location and name = t.name)) total
from tablename thttps://stackoverflow.com/questions/61372242
复制相似问题