У меня есть 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
Но желаемый / ожидаемый результат должен выглядеть следующим образом
Так что в php как я могу добавить отсутствующие «пустые» значения даты или кто-то предложил мне добавить другую таблицу, содержащую только даты, но я понятия не имею, как она должна работать.
Задача ещё не решена.
Других решений пока нет …