我有一个表“表演”,其中包含“日期”和“计数”栏目。 但是,行是稀疏的,即有很多天没有行,这隐含地意味着count = 0。 在运行时我可以做一个查询:
date count
2016-7-15 3
2016-7-12 1
2016-7-11 2
会给我这个:
date count
2016-7-15 3
2016-7-14 0
2016-7-13 0
2016-7-12 1
2016-7-11 2
答案 0 :(得分:1)
您可以使用generate_series()
和left join
:
with q as (<your query here>)
select s.dte, coalesce(q.count, 0) as count
from (select generate_series(min(q.date), max(q.date), interval '1 day') as dte
from q
) s left join
q
on s.dte = q.date;