【发布时间】:2016-07-23 22:59:21
【问题描述】:
我有这个查询,我想用一些值填充缺失的日期(例如零......)
SELECT date, SUM(val1) as sum_val
FROM table1
WHERE date BETWEEN '2016-03-04' AND '2016-03-10'
GROUP BY date
结果如下:
|--------------------------
|date, sum_val
|--------------------------
|2016-03-04, 21568
|--------------------------
|2016-03-05, 14789
|--------------------------
|2016-03-08, 20568
|--------------------------
|2016-03-10, 5841
|--------------------------
如何使用零值填充缺失的日期?有人有想法吗?
我需要这些数据用于图表预览。
【问题讨论】:
-
您需要使用带有日历的附加表或过程来制作具有日期范围的临时表
-
没有其他方法可以做到这一点吗?
-
只循环一个月,如果它与你的存在日期匹配,则不需要插入数据,而是添加0。
-
您可以手动选择每个日期,而不是使用纯 sql - 否
-
@Heril Muratovic 在 mysql - 没有。但是你可以在 php 中做到这一点