join
方法は、データベースとの間でクエリを送受信するオーバーヘッドを削減するという理由だけで、一般的に優れていると考えられています。
テーブルに適切なインデックスがある場合、2つのメソッドの基本的なパフォーマンスは類似しています。つまり、どちらの方法でも適切なインデックスを使用して結果を取得します。
データベースの観点から、join
方法ははるかに優れています。データロジックを1つの場所に統合し、コードをより透過的にします。また、データベースは、アプリケーションコードでは明らかにならない可能性のある最適化を行うことができます。