$shop=DB::table('shops')
->leftJoin('orderbookings',function($join)
{
$join->on('shops.id','=','orderbookings.shop_id');
$join->on('orderbookings.created_at','>=',DB::raw(date("Y-m-d",strtotime("now"))));
})
->select('shops.*')
->selectRaw('COUNT(orderbookings.id) as totalorder, SUM(orderbookings.grand_total) as gtotal')
->orderBy('shops.shop_name', 'asc')
->groupby('shops.id')
->paginate(10);
以上代码工作正常(但不给总订单和数量正确),并且结果几乎接近我想要的结果, 但是我无法给出日期格式(Y-m-d H:i:s),它显示语法错误。我使用的是Laravel 5.2版本 注意:我想给时间以及日期来纠正结果, 给出[例如:2017-03-08 11:15:00]显示语法错误
在mysql中工作查询
SELECT COUNT(orderbookings.id), SUM(orderbookings.grand_total), shops.shop_name FROM
{商店{1}}
但无法以雄辩的方式进行转换
答案 0 :(得分:0)
您应该能够执行以下操作:
$join->on('orderbookings.created_at', '>=', date("Y-m-d"));
您不需要使用DB::raw
,并且为null
留下第二个参数date
,会假设为"now"
。
如果这不能解决您的问题,请发布您看到的确切错误。