在 Laravel 中使用 WHERE IN 執行嵌套子查詢
在 Laravel 中,您可以使用 whereIn 方法執行巢狀子查詢。此技術通常用於根據子查詢派生的條件來選擇記錄。
要執行問題中提供的查詢,您可以使用以下Laravel 程式碼:
Products::whereIn('id', function($query){ $query->select('product_id') ->from(with(new ProductCategory)->getTable()) ->whereIn('category_id', ['223', '15']) ->where('active', 1); }) ->get();
在此程式碼中,內部子查詢選擇滿足指定條件的product_id值並將它們放入臨時表中。然後,外部查詢使用這些值作為其 WHERE IN 子句的一部分來檢索對應的產品記錄。
出於效能考慮,此方法優於使用聯接,因為子查詢產生的臨時表可以是資料庫引擎更有效地使用。
以上是如何在 Laravel 中使用 WHERE IN 執行嵌套子查詢?的詳細內容。更多資訊請關注PHP中文網其他相關文章!