如何在Laravel中进行此查询: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我也可以通过连接来做到这一点,但我需要这种格式来提高性能。
3 回答
千万里不及你
TA贡献1784条经验 获得超9个赞
考虑以下代码:
Products::whereIn('id', function($query){
$query->select('paper_type_id')
->from(with(new ProductCategory)->getTable())
->whereIn('category_id', ['223', '15'])
->where('active', 1);
})->get();
不负相思意
TA贡献1777条经验 获得超10个赞
您可以使用关键字“use($ category_id)”来使用变量
$category_id = array('223','15');
Products::whereIn('id', function($query) use ($category_id){
$query->select('paper_type_id')
->from(with(new ProductCategory)->getTable())
->whereIn('category_id', $category_id )
->where('active', 1);
})->get();
- 3 回答
- 0 关注
- 1924 浏览
添加回答
举报
0/150
提交
取消