我有一个像这样的表:
ID item_type date
1 apple 2016-12-01
2 banana 2016-12-01
3 banana 2016-12-01
等等。我需要做的是得到一个输出表,其中月份为行,item_type 为列,每个组合的条目数计数,使其看起来像
month apple banana
dec 1 2
等等...我已经尝试过 date_trunc
进行每月分组,但这似乎是根据日期而不是月份给我计数!而且我完全不确定如何进行多重分组。
最佳答案
使用条件聚合:
select date_trunc('month', date) as mon,
sum((item_type = apple)::int) as apple,
sum((item_type = banana)::int) as banana
from t
group by mon
order by mon;
关于sql - PostgreSQL 按月和类型分组数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41125773/