[英]Why Laravel Eloquent HavingRaw returns a null value?
我试图在 Laravel Eloquent 中编写以下查询,它返回 null 值。 我不知道我在以下查询中做错了什么。
SQL 查询::
SELECT orders.user_id FROM orders JOIN order_item ON order_item.order_id = orders.id GROUP BY orders.user_id HAVING COUNT(orders.user_id)>700
Eloquent 查询生成器::
return DB::table('orders')
->join('order_item', 'order_item.id', '=', 'orders.id')
->groupBy('orders.user_id')
->select('orders.user_id')
->having(DB::raw('COUNT(orders.user_id) > 700'))
->get()
将 order_item.id 更改为 order_item.order_id 并在 having 子句中使用 havingRaw 而不是 DB::raw。 请参阅以下正确查询。
return DB::table('orders')
->join('order_item', 'order_item.order_id', '=', 'orders.id')
->groupBy('orders.user_id')
->select('orders.user_id')
->havingRaw('COUNT(orders.user_id) > 700')
->get()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.