首页 新闻 会员 周边

按照时间日期统计SQL

0
悬赏园豆:5 [已解决问题] 解决于 2019-01-22 11:22

有两张表需要联表查询统计
表1
table1
只有一个字段date类型
表数据
2018-09-01
2018-09-02
2018-09-03
2018-09-04
2018-09-05
:
:
:
:
2018-09-30

第二张表,三个字段
key date counts
123 2018-09-02 1
123 2018-09-03 2
123 2018-09-05 5
456 2018-09-10 10
456 2018-09-16 15

需要查询的结果为:
123 2018-09-01 0
123 2018-09-02 1
123 2018-09-03 2
123 2018-09-04 4
123 2018-09-05 5
:
:
:
123 2018-09-30 0

456 2018-09-01 0
:
:
456 2018-09-10 10
:
:
456 2018-09-16 15
:
:
456 2018-09-30 0

按照日期统计,每天统计,如果在某个日期没有数据,则为0

有机物的主页 有机物 | 初学一级 | 园豆:19
提问于:2018-09-25 22:31
< >
分享
最佳答案
0

select
a.key1,a.date1,
case when (select count1 from table2 where a.key1=key1 and a.date1=date1) is null then 0
else (select count1 from table2 where a.key1=key1 and a.date1=date1) end
as count1
from
(
select distinct a.date1,b.key1
from table1 a
join table2 b
on 1=1
) a
order by 1
--仅供参考

收获园豆:5
ThinkDifferent | 菜鸟二级 |园豆:328 | 2018-09-26 09:47
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册