【Laravel】SQLのサブクエリの書き方

Laravel
CopyrightFreePicturesによるPixabayからの画像

Laravelでちょっと複雑なSQLを書かなければいけない時、サブクエリを使いたくなる場合があると思います。
その際にどう書くのが良いか、色々試した結果、今の所の個人ベストプラクティスを記載します!

ウェブ開発の人気オンラインコース

書き方

それは、fromSub()メソッドを使う方法です!

$subQuery = DB::table('hoge')
 ->where('id', 1)
 ->select('col1');

DB::query()
 ->fromSub($subQuery, 'sub')
 ->leftJoin('hoge2', 'sub.id', '=', 'hoge2.id')
 ->...

mergeBindings()を使う方法もありますが、SQLパラメータのことを考慮する必要がありそうで、その辺を気にせずに使えるfromSub()の方が圧倒的に使いやすそうでした!!

ぜひ、お試しあれ~

オススメ

コメント

タイトルとURLをコピーしました