ホームページ  >  記事  >  データベース  >  Laravelで日付範囲内のレコードをクエリする方法は?

Laravelで日付範囲内のレコードをクエリする方法は?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-26 21:34:29956ブラウズ

How to Query for Records Within a Date Range in Laravel?

Laravel 日付範囲間の日付のクエリ

Laravel では、whereBetween メソッドを使用して、日付またはdatetime 列は指定された範囲内にあります。これは、特定の期間内に期限切れまたは更新が予定されているレコードを取得するなどのタスクに役立ちます。

元の質問:

作成者は当初、期限が切れるプロジェクトを選択するためのクエリを探していました。次の 7 日間で繰り返しまたは更新するには、where メソッドを使用して、特定のタイムスタンプより後の日付を確認します。

解決策:

ただし、作成者は次のことを発見しました。現在の日付から 7 日を引いた日付をクエリする必要があるということです。これは、次のように whereBetween メソッドを使用して実現されました。

<code class="php">$projects = Project::whereBetween('recur_at', [
    Carbon::now(),
    Carbon::now()->addWeek()
])
->where('status', '<', 5)
->where('recur_cancelled', '=', 0)
->get();</code>

改良されたクエリ:

2 番目のソリューションは、where メソッドを使用して条件を直接連鎖させることで改善されました。

<code class="php">$projects = Project::where('recur_at', '<=', Carbon::now()->addWeek())
->where('recur_at', '!=', "0000-00-00 00:00:00")
->where('status', '<', 5)
->where('recur_cancelled', '=', 0)
->get();</code>

これによりクエリが簡素化され、function(q) 構文が不要になりました。

以上がLaravelで日付範囲内のレコードをクエリする方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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