ホームページ  >  記事  >  データベース  >  MySQL で INTERVAL と CURDATE() を使用して特定の期間のデータを取得するにはどうすればよいですか?

MySQL で INTERVAL と CURDATE() を使用して特定の期間のデータを取得するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-27 06:06:29339ブラウズ

How can I retrieve data for specific time periods in MySQL using INTERVAL and CURDATE()?

MySQL で INTERVAL と CURDATE を使用して特定の期間のデータを取得する

一時データを操作する場合、MySQL は操作するための関数をいくつか提供します日付と時間間隔。この場合、複数のクエリを回避しながら特定の月のデータを抽出することを目的としています。

これを実現するには、INTERVAL キーワードを現在の日付を返す関数 CURDATE() と組み合わせて利用できます。 CURDATE() から INTERVAL を減算すると、特定の時間枠を表す範囲を作成できます。

たとえば、前月のデータを取得するとします。次のクエリを使用できます:

AND v.date > (DATE_SUB(CURDATE(), INTERVAL 1 MONTH))
AND v.date < CURDATE()

このクエリは、'date' 列が前月の範囲内にあるテーブル 'votes_server' からデータを選択します。

同様に、 INTERVAL 値を調整して、任意の期間のデータを取得します。

たとえば、過去 12 か月のデータを取得するには、次のクエリを使用できます。

AND v.date > (DATE_SUB(CURDATE(), INTERVAL 12 MONTH))
AND v.date < CURDATE()

このクエリは、前年全体のデータを返します。

CURDATE() で INTERVAL を使用すると、時間データを柔軟にフィルターして動的な時間範囲を作成でき、データ取得タスクが簡素化され、複数のクエリが不要になります。

以上がMySQL で INTERVAL と CURDATE() を使用して特定の期間のデータを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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