某段时间内按天统计数据,没有数据的结果为0

1.获取某段时间的天数。2018-05-03:最终时间,10:天数
1 SELECT @cdate := date_add(@cdate, INTERVAL - 1 DAY) '时间' FROM (SELECT @cdate := '2018-05-03' FROM tenant_pv LIMIT 10) t1

执行结果:

2.按天统计数据
 1 SELECT
 2     times AS '时间',
 3     count(id) AS '数量'
 4 FROM
 5     (
 6         SELECT
 7             @cdate := date_add(@cdate, INTERVAL - 1 DAY) times
 8         FROM (SELECT @cdate := '2018-05-03' FROM tenant_pv LIMIT 10) t1
 9     ) AS dates
10 LEFT JOIN (
11     SELECT
12         tp.id,
13         tp.createTime
14     FROM
15         tenant_pv tp
16     LEFT JOIN sys_tenant sy ON sy.id = tp.tenantId
17 ) p ON DATE_FORMAT(createTime, '%Y-%m-%d') = dates.times
18 GROUP BY
19     times

执行结果:

猜你喜欢

转载自www.cnblogs.com/ahanutang/p/8986910.html
今日推荐