【发布时间】:2018-03-06 12:44:21
【问题描述】:
- 数据库:Postgres
- 表名:
records - 有 4 列
Year | Dept | Expense | Month
因此,每年每个月/每个部门最多可以有一个记录。
我有一个子查询,它根据约束返回以下数据。
Year | Dept
2001 | HR
2001 | ACC
2001 | TECH
2002 | TECH
2003 | HOUSE-KEEPING
2003 | TECH
现在我需要在同一张表上运行另一个查询来获取每个值对的总费用。
使用子查询的输出,我的主查询将类似于
select Dept, sum(Expense)
from records
where (Year, Dept) in (...)
... I want to iterate over value pairs from the subquery
(SUBQUERY which returns
Year | Dept
2001 | HR
2001 | ACC
2002 | TECH
2003 | HOUSE-KEEPING
)
当我运行此 select 语句时,返回的输出仅包含 TECH 在所有三年中的数据。
请帮助理解我如何在子查询的所有行上运行主选择
【问题讨论】:
标签: sql postgresql select subquery where-clause