web-dev-qa-db-ja.com

Laravel Eloquent:BetweenでBetweenを使用する方法は?

私はLaravel 5.5を使用しています。日時列の日付部分のみを一致させるクエリを作成する必要があります。これはdate(date_col)='2018-01-01'と同等です。どのようにして達成しますかこれは雄弁な方法ですか?WhereDate()は日付部分を返しますが、両方をマージする方法はありますか?

ありがとう

6
Volatil3

WhereDateとその間のマージには、次のようなものを使用できます。

User::whereBetween(DB::raw('DATE(created_at)'), array($from_date, $to_date))->get();

sql:

select * from `users` where DATE(created_at) between '2018-02-01' and '2018-02-06'
14

カーボンを使用できます:

$q->whereDate('date_col', '=', Carbon::parse($date)->toDateString());

whereDateも機能するはずです。2番目のパラメータとして値を渡します

->whereDate('date_col', '2018-02-06')
0
user320487