ホームページ > データベース > mysql チュートリアル > 日曜日から過去 1 週間の MySQL データを取得するにはどうすればよいですか?

日曜日から過去 1 週間の MySQL データを取得するにはどうすればよいですか?

Susan Sarandon
リリース: 2025-01-08 16:37:40
オリジナル
313 人が閲覧しました

How to Retrieve MySQL Data from the Past Week Starting on Sunday?

先週の MySQL データの抽出 (日曜日開始)

このガイドでは、前の日曜日から始まる過去 1 週間の MySQL データを取得する方法を説明します。 これを実現するために、MySQL の日付関数を活用します。

MySQL クエリ

次のクエリは、前の日曜日から開始して過去 7 日間のレコードのみを含むようにデータを効率的にフィルター処理します。

<code class="language-sql">SELECT id
FROM tbname
WHERE date BETWEEN date_sub(CURDATE(), INTERVAL DAYOFWEEK(CURDATE())-1 DAY) AND CURDATE();</code>
ログイン後にコピー

詳しい説明

  • CURDATE(): 現在の日付を返します。
  • DAYOFWEEK(CURDATE()): 現在の日付の曜日 (1=日曜日、2=月曜日、...、7=土曜日) を決定します。
  • INTERVAL DAYOFWEEK(CURDATE())-1 DAY: 前の日曜日に達するまでに減算する日数を計算します。 今日が日曜日の場合は 0 日が減算されます。今日が月曜日の場合は 1 日減算されます。
  • date_sub(CURDATE(), INTERVAL DAYOFWEEK(CURDATE())-1 DAY): 現在の日付から計算された日数を減算し、前の日曜日の日付を求めます。
  • BETWEEN ... AND CURDATE(): 「日付」列が前の日曜日から現在の日付までの範囲内にあるレコードを選択します。

具体例

次のサンプル テーブルについて考えてみましょう:

id date
2 2011-05-14 09:17:25
5 2011-05-16 09:17:25
6 2011-05-17 09:17:25
8 2011-05-20 09:17:25
15 2011-05-22 09:17:25

上記のクエリを実行すると、次の結果が返されます:

id
5
6
8

これは、前の日曜日から開始して、過去 1 週間以内のエントリに対応する ID (5、6、および 8) を正確に取得します。 具体的な結果は、クエリが実行された現在の日付によって異なることに注意してください。

以上が日曜日から過去 1 週間の MySQL データを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート