Мне нужно ежемесячно распространять свои данные, используя одну единственную инструкцию mysql.Ожидаемый результат утверждения ниже: таблица с 12 строками.Если в течение одного месяца данные недоступны, он должен вернуть 0 за этот месяц.Однако в результате текущего оператора SQL одна или несколько строк отсутствуют, если отсутствуют данные.Что мне не хватает?
SELECT m.Month as m1, MONTH(FROM_UNIXTIME(crdate)) as m2,
SUM(CASE WHEN keylock = 1 THEN 1 ELSE 0 END) AS c1, SUM(CASE WHEN keylock = 2 THEN 1 ELSE 0 END) AS c2
FROM tx_bhm_domain_model_access a
RIGHT OUTER JOIN (
SELECT 1 AS Month
UNION SELECT 2 AS Month
UNION SELECT 3 AS Month
UNION SELECT 4 AS Month
UNION SELECT 5 AS Month
UNION SELECT 6 AS Month
UNION SELECT 7 AS Month
UNION SELECT 8 AS Month
UNION SELECT 9 AS Month
UNION SELECT 10 AS Month
UNION SELECT 11 AS Month
UNION SELECT 12 AS Month ) m
ON MONTH(FROM_UNIXTIME(a.crdate)) = m.Month
WHERE YEAR(FROM_UNIXTIME(a.crdate))=2018
GROUP BY m.Month
ORDER BY m.Month