Сгруппировать по дате Отметка времени MySQL - PullRequest
0 голосов
/ 13 мая 2011

У меня есть следующий запрос к отметке времени (заданной INT (10), который делает то, что я хочу, но не точно:

SELECT count(entry_date) as theCount, FROM_UNIXTIME(entry_date, '%Y-%m-%d') AS dd 
FROM exp_weblog_titles 
WHERE entry_date < UNIX_TIMESTAMP(NOW()) 
GROUP BY dd 
ORDER BY dd DESC 
LIMIT 7

, который выплевывает последние 7 дат иКоличество записей в тех датах, которые находятся до сегодняшней даты. Проблема с запросом, который я создал, заключается в том, что он выплевывает дату только в том случае, если на нем есть запись. В действительности, я все еще хочу, чтобы эта дата былаесли есть ноль записей. Это возможно?

1 Ответ

4 голосов
/ 13 мая 2011

Вам понадобится список дат откуда-то. Многие люди создают таблицу календаря именно для этой цели с каждой датой (или каждым значением), в которой они нуждаются, чтобы эту таблицу календаря и таблицу данных можно было объединить для предоставления запроса такого типа.

В долгосрочной перспективе вы обнаружите, что это намного проще, чем любое другое решение, для настройки достаточно времени.

См. в этой статье для примера того, как создать такую ​​таблицу.

...