ホームページ >データベース >mysql チュートリアル >MySQL で当月のデータを選択するにはどうすればよいですか?

MySQL で当月のデータを選択するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-08 20:34:12922ブラウズ

How to Select Data from the Current Month in MySQL?

MySQL での当月内のデータの選択

MySQL では、特定の日付範囲内 (通常は当月の 1 日の間) のデータを抽出する必要がある場合があります。そして当日。これを実現するには、日付関数を組み合わせて使用​​します。

クエリ:

SELECT * FROM table_name
WHERE date BETWEEN "1st day of current month" AND "current day";

説明:

上記のクエリは、開始日と終了日のハードコードされた値に依存しています。ただし、これらの値は現在のシステム日付によって異なります。代わりに、動的な日付関数を使用してこれらの境界を決定できます。

クエリの改善 (オプション) 1):

SELECT * FROM table_name
WHERE date BETWEEN DATE_ADD(LAST_DAY(DATE_SUB(CURDATE(), INTERVAL 30 DAY), INTERVAL 1 DAY) AND CURDATE();

内訳:

  • CURDATE() は現在の日付を取得します。
  • DATE_SUB(..., 間隔 30 DAY) は、現在の日付から 30 日を引いて、前月の最終日を取得します。
  • LAST_DAY(...) は、指定された月の最後の日を返します (inこの場合は前月)。
  • DATE_ADD(...) は、前の式を使用して、現在の月の 1 日を取得します。
  • BETWEEN ... AND ... は、日付列が開始日と終了日の間にあるかどうかを確認します。

クエリの改善 (オプション) 2):

SELECT * FROM table_name
WHERE date BETWEEN DATE_FORMAT(NOW(), '%Y-%m-01') AND NOW();

内訳:

  • DATE_FORMAT(..., '%Y-%m-01' ) 現在の月の 1 日を抽出します。 date.
  • NOW() は現在の日付と時刻を取得します。
  • BETWEEN ... AND ... は日付列が該当するかどうかを確認します始まりと終わりの間

使用法:

これらのクエリを使用すると、指定された日付範囲内のデータを取得できます。これは、レポートやフィルタリングの目的で特に役立ちます。

以上がMySQL で当月のデータを選択するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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