1. ホーム
  2. ララベル

[解決済み】Eloquentで「if not null」を確認する方法は?

2022-04-14 06:44:53

質問

フィールドが がヌルでない場合 をEloquentで使用することはできますか?

試してみた Model::where('sent_at', 'IS NOT', DB::raw('null'))->... と表示されます。 IS NOT を比較ではなく、バインディングとして使用します。

これは DB::getQueryLog() には、それについて書かれています。

  'query' => string 'select * from my_table where sent_at = ? and profile_id in (?, ?) order by created_at desc' (length=101)
  'bindings' => 
    array (size=3)
      0 => string 'IS NOT' (length=6)
      1 => int 1
      2 => int 4

解決方法は?

Eloquentにはそのためのメソッドがあります(Laravel 4.*/5.*)。

Model::whereNotNull('sent_at')

Laravel 3:

Model::where_not_null('sent_at')