语句:
select
a.date,ifnull(b.num,0) count
from
(
SELECT CONCAT('2020年','1月') AS date UNION
SELECT CONCAT('2020年','2月') AS date UNION
SELECT CONCAT('2020年','3月') AS date UNION
SELECT CONCAT('2020年','4月') AS date UNION
SELECT CONCAT('2020年','5月') AS date UNION
SELECT CONCAT('2020年','6月') AS date UNION
SELECT CONCAT('2020年','7月') AS date UNION
SELECT CONCAT('2020年','8月') AS date UNION
SELECT CONCAT('2020年','9月') AS date UNION
SELECT CONCAT('2020年','10月') AS date UNION
SELECT CONCAT('2020年','11月') AS date UNION
SELECT CONCAT('2020年','12月') AS date
)a
left join
(select count(*) num,DATE_FORMAT(HappenTime,'%Y年%c月') months from workorders) b
on a.date = b.months
注:上面的"2020年"可根据实际情况以参数的形式传入。
结果: