WHERE IN 句を使用した Laravel サブクエリ
Laravel の一般的なタスクは、WHERE IN 句内のサブクエリを使用してデータを取得することです。これを実現するには、クロージャを指定して whereIn() メソッドを利用します。
たとえば、次のクエリがあるとします。
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
このクエリを Laravel に変換するには、次のようにします。次のコードを使用できます:
Products::whereIn('id', function($query){ $query->select('paper_type_id') ->from(with(new ProductCategory)->getTable()) ->whereIn('category_id', ['223', '15']) ->where('active', 1); }) ->get();
この中でcode:
以上がLaravel の「whereIn」をサブクエリで使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。