ホームページ >データベース >mysql チュートリアル >MySQL の GROUP BY 句を使用して、日、月、年ごとにレコードをカウントするにはどうすればよいですか?

MySQL の GROUP BY 句を使用して、日、月、年ごとにレコードをカウントするにはどうすればよいですか?

DDD
DDDオリジナル
2025-01-19 19:47:11630ブラウズ

How Can I Use MySQL's GROUP BY Clause to Count Records by Day, Month, or Year?

GROUP BY を使用した日、月、年ごとの MySQL レコードのカウント

このガイドでは、MySQL の GROUP BY 句を日付関数とともに使用して、日、月、または年ごとにグループ化されたデータベース レコードを効率的にカウントする方法を説明します。 TIMESTAMP という名前の record_date フィールドがタイムスタンプの保存に使用されると仮定します。

特定の年 (2009 年など) のレコードをカウントするには、次のクエリを使用します。

<code class="language-sql">SELECT COUNT(id)
FROM stats
WHERE YEAR(record_date) = 2009
GROUP BY YEAR(record_date);</code>

このクエリは、record_date から抽出された年ごとに結果をグループ化します。

特定の年の月次数を取得するには、次の洗練されたクエリを使用します。

<code class="language-sql">SELECT COUNT(id), YEAR(record_date), MONTH(record_date)
FROM stats
GROUP BY YEAR(record_date), MONTH(record_date);</code>

これは結果を年と月の両方でグループ化し、より詳細な月ごとの内訳を提供します。 わかりやすくするために、SELECT ステートメントに YEAR(record_date)MONTH(record_date) を追加していることに注意してください。

毎日のカウントについては、DAY(record_date) を使用して同様のアプローチを適用できます。 クエリをさらにカスタマイズするための日付と時刻関数の包括的なリストについては、MySQL の公式ドキュメントを参照してください。

以上がMySQL の GROUP BY 句を使用して、日、月、年ごとにレコードをカウントするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。