Heim >Datenbank >MySQL-Tutorial >Wie verwende ich „whereIn' von Laravel mit einer Unterabfrage?
Laravel-Unterabfrage mit WHERE IN-Klausel
Eine häufige Aufgabe in Laravel besteht darin, Daten mithilfe einer Unterabfrage innerhalb einer WHERE IN-Klausel abzurufen. Um dies zu erreichen, können Sie die Methode whereIn() mit einem Abschluss verwenden.
Angenommen, Sie haben die folgende Abfrage:
SELECT `p`.`id`, `p`.`name`, `p`.`img`, `p`.`safe_name`, `p`.`sku`, `p`.`productstatusid` FROM `products` p WHERE `p`.`id` IN ( SELECT `product_id` FROM `product_category` WHERE `category_id` IN ('223', '15') ) AND `p`.`active`=1
Um diese Abfrage in Laravel zu übersetzen, müssen Sie kann den folgenden Code verwenden:
Products::whereIn('id', function($query){ $query->select('paper_type_id') ->from(with(new ProductCategory)->getTable()) ->whereIn('category_id', ['223', '15']) ->where('active', 1); }) ->get();
In diesem Code:
Das obige ist der detaillierte Inhalt vonWie verwende ich „whereIn' von Laravel mit einer Unterabfrage?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!