我正试图从其他开发者那里得到一些答案,但在我的情况下,这是有点奇怪,这是不工作。我只想使用两列(事务id和存储id)对记录进行分组。请看下面我的代码:
$transactions = DB::table('orders')
->join('store', 'order.store_id', 'store.id')
->whereDate('order_date', '>=', $from)
->whereDate('order_date', '<=', $to)
->select(
[
'store_id',
'transaction_id',
'currency',
'store_name',
DB::raw('SUM(grand_total) as total')
]
)
->groupBy('transaction_id')
->groupBy('store_id')
->get();
return json_encode($transactions);
该代码返回:
0 Object { store_id: 32, transaction_id: "COD1000145148", … }
1 Object { store_id: 32, transaction_id: "COD1000145149", … }
2 Object { store_id: 33, transaction_id: "COD1000145150", … }
3 Object { store_id: 34, transaction_id: "COD1000145151", … }
4 Object { store_id: 34, transaction_id: "COD1000145152", … }
5 Object { store_id: 35, transaction_id: "COD1000145153", … }
所以,这些数据只按事务id分组,而不是按存储id分组。知道吗?
p、 我也试过了 groupBy('transaction_id', 'store_id')
. 另外,我尝试创建一个数组,但它仍然返回相同的数据。
laravel版本:7
暂无答案!
目前还没有任何答案,快来回答吧!