my groupby没有在laravel7中将数据分组为2列

irtuqstp  于 2021-07-24  发布在  Java
关注(0)|答案(0)|浏览(141)

我正试图从其他开发者那里得到一些答案,但在我的情况下,这是有点奇怪,这是不工作。我只想使用两列(事务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

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题