LaravelでwhereやorWhereを使ってテーブルデータの絞り込み

LaravelでwhereやorWhereを使ってテーブルデータの絞り込み

682 回閲覧されました

みなさんこんにちは、jonioです。

Laravelでデータベースを絞り込む時にwhereやorWhereを使うのですが知った内容を忘れない為のアウトプットの記事になります。

 

whereの基本の使い方

今回のデータベースのテーブルは全て↓を使います。(モデルはDangoとします)

「dangoカラムがあんこ」のデータを所得するコントローラーのコードは↓です。

コードの書き方は「モデル名::where(‘カラム名’,’指定した値’)->get();」です。

->get()」はwhereの条件に合った全てのデータを取得して「->first()」になるとwhereの条件に合った最初のデータを取得します。

これで↓の赤枠のデータを取得します。

 

whereに複数の条件を指定

whereを複数回使う事で細かく絞り込みをする事ができます。

「dangoカラムがあんこ」であり「numberカラムが7より大きい」データを取得するにはコントローラーのコードを↓とします。

これで↓の赤枠のデータを取得します。

 

「または」を含む

「または」も考えたい時はorWhereを使います。

「dangoカラムがあんこ」または「numberカラムが5」のデータを取得する為にコントローラーのコードを↓にします。

これで↓の赤枠のデータを取得します。

 

whereとorWhereで複雑な条件にする

「dangoカラムがきなこでありnumberカラムが7より大きい」または「dangoカラムがあんこ」のデータを取得します。

この時のコントローラーのコードは↓になります。

これで↓の赤枠のデータを取得します。

と言った感じですが慣れればスムーズに書けそうです。