如何在php中填写sql结果的缺失日期时间值

时间:2015-09-13 22:26:06

标签: php mysql linegraph

我有一个sql请求,每5分钟(或15分钟)返回一次记录计数。 所以我可以在线图上显示。但是这些数据本身会返回错误的图形,因为某些时间跨度没有记录,因此没有日期返回该间隔,这导致显示错误的图形。

这是我的sql代码。

SELECT
        YEAR(postdate) as Y, MONTH(postdate) as M, DAY(postdate) as D, HOUR(postdate) as H, MINUTE(postdate),
        FLOOR(MINUTE(postdate) / 5) * 5 AS MinIntVal,
        SUM(CASE type WHEN 'ins' THEN 1 ELSE 0 END) AS Instagram,
        SUM(CASE type WHEN 'twi' THEN 1 ELSE 0 END) AS Twitter,
        SUM(1) as TotalPost

FROM
entries
WHERE
    postdate IS NOT NULL
    AND postdate >= DATE_ADD(CURDATE(), INTERVAL -5 DAY)
GROUP BY
    YEAR(postdate), MONTH(postdate), DAY(postdate), MinIntVal
ORDER BY D DESC, H DESC, MinIntVal Desc

结果如下 wrong graphic

但是期望/预期的结果应该如下所示 enter image description here

所以在php中如何添加缺少的'空'日期值或有人建议我应该添加另一个表只包含日期,但我不知道它应该如何工作。

0 个答案:

没有答案