gpt4 book ai didi

php - 使用 Eloquent 在 Laravel 中实现 group_by 和 having

转载 作者:可可西里 更新时间:2023-10-31 23:53:47 24 4
gpt4 key购买 nike

我在实现 group_by 以及在 Laravel 中使用 Eloquent 进行查询时遇到问题。

场景如下:

orders
- id
- qty

deliveries
- id
- qty
- order_id

我想使用连接来显示未完成交货的订单以及相应的余额:

Order::left_join('deliveries', 'orders.id', '=', 'deliveries.order_id')
->select(array('orders.*'), DB::raw('orders.qty - IFNULL(sum(deliveries.qty),0) AS balance')))
->group_by('order_id')
->having('balance', '>', 0)
->get();

“balance”值在没有“having”子句的情况下也能正常工作。但是,在添加“having”子句时,生成的表不显示任何行。有人有什么想法吗?

提前致谢!

最佳答案

最终切换到 Laravel 4 并执行了似乎有效的 ff。

Order::leftJoin('deliveries', 'orders.id', '=', 'deliveries.order_id')
->select(array('orders.*'), DB::raw('orders.qty - IFNULL(sum(deliveries.qty),0) AS balance')))
->groupBy('order_id')
->havingRaw('balance > 0')
->get();

关于php - 使用 Eloquent 在 Laravel 中实现 group_by 和 having,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16976241/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com