首页 > 解决方案 > 具有不同条件的多列 SQL 查询

问题描述

我将如何创建一个查询 1 个表并希望返回多个子句但每列具有不同条件的查询。最后我还需要一个 group by 子句。如下所示,我的括号是伪代码:

Select date, sum(revenue) [where source = X], sum (revenue [where source = Y]
from table1 
group by date

这是可能的还是我只需要做不同的查询

标签: sqlsql-server

解决方案


使用条件聚合:

select date,
       sum(case when source = 'X' then revenue end) as x_revenue,
       sum(case when source = 'Y' then revenue end) as y_revenue
from t
group by date;

推荐阅读