我有一组属于不同品牌的不同帐户在不同日期的粉丝数量的数据点:
|brand|account|date|fans|
|-----|-------|----|----|
|Ford |ford_uk|... |10 |
|Ford |ford_uk|... |11 |
|Ford |ford_us|... |20 |
|Ford |ford_us|... |21 |
|Jeep |jeep_uk|... |30 |
|Jeep |jeep_uk|... |31 |
|Jeep |jeep_us|... |40 |
|Jeep |jeep_us|... |41 |
我正在尝试按品牌返回粉丝总数,定义为每个品牌账户的最大粉丝数之和:
Ford: 32
Jeep: 72
我试过这样的子查询:
(SELECT sum(account_fans)
FROM
(
SELECT max(fans) AS account_fans
GROUP BY account
) subquery_name
) AS total_fans
问题是我得到:
ERROR: subquery uses ungrouped column account from outer query.
但我不想对外部查询进行分组。你能帮忙吗?
最佳答案
您是否尝试过以这种方式编写您的查询?
select brand, sum(mx)
from (
select brand, account, max(fans) mx
from account_fans
group by brand, account
) t1
group by brand
关于SQL GROUP BY 仅在子查询中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42926091/