LoginSignup
1
0

More than 5 years have passed since last update.

Laravel 関連テーブルのカラムで検索する方法

Last updated at Posted at 2019-02-18

前提

Presidentモデル(社長) 1人 に対して
Shopモデル(お店) 複数  が紐づいている状態

Laravelの関連テーブルのカラムで検索したい。

社長の名前にがつくお店一覧を出したい場合はこれ


return Shop::with('president')
                ->select('*', 'presidents.name as president_name', 'shops.name as shop_name')
                ->leftJoin('presidents', 'presidents.id', '=', 'president_id')
                ->where('presidents.name', 'LIKE', '%' .  . '%')
                ->groupBy('presidents.id');

解説

お店にも、社長にも name というカラムがある。
joinするとnameカラムが社長の名前で上書きされてしまう。

なので select as を使って別の名前に最初に定義し直す。

->select('*', 'presidents.name as president_name', 'shops.name as shop_name')

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0