Builerクラスのwhereメソッドは、DBクラスやModelクラスのメソッドチェーンとして使用します。
Builder::where(カラム,演算子,値,論理演算子)
Illuminate\Database\Query\Builder::where()メソッドは、WHERE句を生成します。第1引数に比較するカラム名、第2引数に演算子(比較演算子やLIKE演算子)による条件式、第3引数に比較する値を指定します。第4引数には、オプションで論理演算子を指定します。デフォルトはandです。尚、第4引数に、orを指定するとorWhereメソッドと同じです。
基本例
//Fluentクエリービルダー DB::table('users')->where('age','<',20)->get(); //Eloquent ORM User::where('email','LIKE','%gmail%')->get();
- 2行目:ageカラムの値が20以下のデータを抽出します。
- 5行目:emailカラムにgmailという文字列が含まれるデータを抽出します。
WHERE句で使える演算子
下記にSQLのWHERE句で使える演算子の一覧を表記しておきます。
- =
等しい - >
大きい - <
小さい - >=
大きい、もしくは等しい - <=
小さい、もしくは等しい - AND
2つの条件を結合し、両方の条件が真 - OR
2つの条件のうち、どちらか一方が真 - NOT
式の結果を反転 - BETWEEN a AND b
対象のフィールドがaとbの範囲内 - IN
対象のフィールドが式の一覧の一つに一致 - LIKE
対象のフィールドがパターンに一致
コメントを残す