У меня есть 2 стола, стол Месяцы и стол Ad. Я хотел бы вернуть все отдельные электронные письма из Ad в месяц.mysql count with 0
Таблица Ad: created_at - DATETIME.
Таблица Месяцы: id_month (INT и первичный ключ)
я попытался с левой присоединиться:
SELECT Months.id_month,count(distinct Ad.email)
FROM `Months` left outer join `Ad`
ON id_month = MONTH(Ad.created_at)
GROUP BY id_month
ORDER BY id_month ASC
Но нет никакого результата за декабрь и она не возвращается 0. (только результаты за месяцы от 1 до 11)
Любая идея?
Я обнаружил, что, если добавить это условие:
WHERE YEAR(Ad.created_at)=2015
, то он не возвращает 0 за декабрь .. почему?
Вы уверен, что месяцы таблицы есть 'декабря (12)' месяц –
, что вы имеете в виду, да табличные месяцы содержат 12 строк, в том числе декабря (я обновил с PrintScreen столовых месяцев) – Julien
Works здесь http://sqlfiddle.com/#!9/69302/1 –