【发布时间】:2019-11-22 20:56:06
【问题描述】:
我有两张桌子,Customer 和 Orders。
-
Customer:ID、姓名、电子邮件 -
Orders:Id、OrderDate、Department、Total、Customer_Id
我构建了一个查询来获取每个部门中总数最高的客户:
select
Id, Name, dep, max(total_s) totals
from
(select
c.Id, c.Name, o.Department dep, sum(o.Total) total_s
from
Customer c
join
Orders o on c.Id = o.CustomerId
group by
1) sub
group by 3
此查询返回每个部门总和最大的客户,问题是我有一个部门有两个客户(行),他们有相同的 Max Total,但查询只返回一行。那么如何返回所有包含 Max 值的行呢?
【问题讨论】:
-
请标记您的数据库。 SQL 是一种语言,它不会告诉我们可能的解决方案。
标签: sql postgresql max