2017-02-28 77 views
0

我尝试转换下面的查询使用查询生成器来laravels但条款和金额具有组一些问题汇总功能有困难SQL查询转换为Laravel建设者

SELECT code, SUM(quantity) as quantity, SUM(sale_price) as price 
FROM `orders` o 
GROUP By code 

我曾经尝试这样做,这是在经历了这么多绝望的尝试之后,我有了什么。

$args['orders'] = DB::table('orders') 
->havingRaw('sum(sale_price)') 
->havingRaw('code') 
->where([ 'shop_id' => $shop_id ]) 
->groupBy('code') 
->get(); 

回答

1

通过

$args['orders'] = DB::table('orders') 
->where('shop_id', '=', $shop_id) 
->select('code', DB::raw('sum(quantity) as quantity, sum(sale_price) as price')) 
->groupBy('code') 
->orderBy('quantity') 
->get(); 

$args['orders'] = DB::table('orders') 
->where('shop_id', '=', $shop_id) 
->select('code', DB::raw('sum(quantity) as quantity, sum(sale_price) as price')) 
->groupBy('code') 
->get(); 

订单一次或尝试

->orderByRaw('sum(quantity)') 
+0

我怎么会在这个附加ORDER_BY列? – Waleed

+0

查看我的回答编辑 – EddyTheDove

+0

Nah,order_by实际上是一个将被连接到另一个表的列。 – Waleed