MySQLでこれを行う最も簡単な方法は、months
というテーブルを作成することです。 興味のあるすべての月が一覧表示され、テーブルにLEFTJOINを使用します。
SELECT
YEAR(time) AS year
MONTH(time) AS month,
COUNT(myTable.year) AS cnt,
FROM months
LEFT JOIN myTable
ON months.year = myTable.year
AND months.month = myTable.month
GROUP BY months.year, months.month
ORDER BY months.year, months.month
ただし、これは主にプレゼンテーションの問題であるため、既に実行しているようにクエリを実行し、結果をクライアント(PHPなど)で変換する方が簡単な場合がよくあります。