首頁 > 資料庫 > mysql教程 > 如何在 Laravel 中使用 WHERE IN 執行嵌套子查詢?

如何在 Laravel 中使用 WHERE IN 執行嵌套子查詢?

Barbara Streisand
發布: 2024-12-10 05:00:14
原創
861 人瀏覽過

How to Perform a Nested Subquery with WHERE IN in Laravel?

在 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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板