问题
I am trying to make an elqouent query for a following sql,
select sum(w.total_item_count) as Day_count, w.created_at as created_at from `sales_flat_orders` as `w` group by DATE(`w`.`created_at`) order by `w`.`created_at` asc
and I have tried this
$orderbydate = DB::table('sales_flat_orders as w')
->select(array(DB::Raw('sum(w.total_item_count) as Day_count'),DB::Raw('DATE(w.created_at) as created_at')))
->groupBy('w.created_at')
->orderBy('w.created_at')
->get();
I am getting correct output in sql query but not in eloquent query, Please help, Thanks.
回答1:
So guys, i have got the answer for this, Thank you for reading my question.
$orderbydate = DB::table('sales_flat_orders as w')
->select(array(DB::Raw('sum(w.total_item_count) as Day_count'),DB::Raw('DATE(w.created_at) day')))
->groupBy('day')
->orderBy('w.created_at')
->get();
The Raw query in my query was wrong for the created_at field. Now its good. Hope you will also get some input from this.
回答2:
$orderbydate = DB::table('sales_flat_orders as w')
->select(array(DB::Raw('sum(w.total_item_count) as
Day_count'),DB::Raw('DATE(w.created_at) as created_at')))
->orderBy('w.created_at')
->get();
$orderbydate->groupBy('w.created_at');
来源:https://stackoverflow.com/questions/26601782/laravel-group-by-date