如何在数组的集合上实现子集合?

时间:2019-05-09 02:39:57

标签: php mysql laravel

我想从laravel中的groupBy获取一个收藏的详细产品。我该如何实现?

我正在使用php 7.1和Laravel。我可以获取年,月和日的总报告的集合。 但是我可以得到该系列的详细产品吗?

我要在控制器中获取集合的查询

$totalBelanjaTahun   = DB::table('assets')
            ->select(DB::raw('EXTRACT(MONTH FROM belitanggal_assets) AS monthCoba, SUM(beliharga_assets) AS harga_beli'))
            ->where('belitanggal_assets', 'like', '%'.$tahun.'%')
            ->groupBy(DB::raw('monthCoba'))
            ->get();

    return view('DilarangBuka.reportTotalBelanjaTahun', compact('totalBelanjaTahun', 'tahun', 'totalPertahun'));

如何获得有关该阵列产品的详细信息,而不仅仅是获得日期和价格?谢谢

1 个答案:

答案 0 :(得分:0)

不要在MySQL中groupBy记录,您将获得每个组的第一条记录。 尝试把它们弄出来。

$totalBelanjaTahun   = DB::table('assets')
            ->select(DB::raw('EXTRACT(MONTH FROM belitanggal_assets) AS monthCoba, beliharga_assets AS harga_beli, field1, field2, field3'))
            ->where('belitanggal_assets', 'like', '%'.$tahun.'%')
            ->get();

并按collect

对它们进行分组
collect($totalBelanjaTahun)->groupBy('monthCoba')

希望这可以为您提供帮助。