我的表结构如下
date seller unit price total
05-06-17 abc 14 700 9800
05-06-17 pqr 12 600 7200
05-06-17 abc 10 520 5200
06-06-17 abc 10 600 6000
06-06-17 pqr 15 520 7800
06-06-17 pqr 16 520 8320
我需要像这样获取记录
1) 'date' = '05-06-2017', 'seller' = 'abc', 'total' = '15000'
2) 'date' = '05-06-2017', 'seller' = 'pqr', 'total' = '7200'
3) 'date' = '06-06-2017', 'seller' = 'abc', 'total' = '6000'
4) 'date' = '06-06-2017', 'seller' = 'pqr', 'total' = '16120'
我需要数据库中的日期数据。seller
abc
表中有两个条目date
05-06-2017
所以我需要total
那天的seller
abc
还有pqr
第二个同样的事情date
对全部seller
每当我们有多行具有相同的数据需要在最终输出中合并在一起时,我们使用group by的功能mySQL.
因此,在您的情况下,您可以使用 laravel 查询生成器以这种方式执行此操作。
DB::table('orders')->select('date', 'seller', DB::raw('SUM(total) as total'))
->groupBy('seller')
->groupBy('date')
->get();
解释
DB::table('orders')->select('date', 'seller', DB::raw('SUM(total) as total'))
将查询我们的orders
我们数据库中的表,然后获取我们提供的列,即date, seller and sum of total column as total
->groupBy('seller')->groupBy('date')
它将合并同一日期同一卖家的多条记录。
->get();
我们从查询中获取数据。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)