У меня есть таблица с записями, которые выглядят так:SQL Query для подсчета записей, соответствующих дневному диапазону дат?
CREATE TABLE sample (
ix int unsigned auto_increment primary key,
start_active datetime,
last_active datetime
);
Мне нужно знать, сколько записей были активны на каждом из последних 30 дней. Дни также должны быть отсортированы по возрастанию, чтобы они были возвращены от старых к новейшим.
Я использую MySQL и запрос будет запущен с PHP, но мне действительно не нужен код PHP, просто запрос.
Вот мой старт:
SELECT COUNT(1) cnt, DATE(?each of last 30 days?) adate
FROM sample
WHERE adate BETWEEN start_active AND last_active
GROUP BY adate;
Вам необходимо изменить «date_add» на «date_sub», чтобы получить предыдущие 30 дней в созданном представлении. –