Laravelのサブクエリの結合条件を複数使うときに、whereとwhereColumnの違いを理解していなかったので、この機会に軽い忘備録としてまとめました。
whereの役割
・カラムと値を比較する
・値はリテラル値および変数が使われる
index.php
->where('id', 1);
->where('id', $userId);
whereColumnの役割
・カラムとカラムを比較する
・SQLでいうcolumnA = columnB
・join句のonと同じ用途で使われる
index.php
->whereColumn('users.id', '=' ,'books.user_id');
以上、whereとwhereColumnの違いについて簡単にまとめました。