我想使用laravel eloquent
执行以下句子SELECT *, count(*) FROM reserves group by day
我遇到的唯一解决方案是在数据库中创建一个视图,但我很确定有一种方法可以用laravel方式来实现。
答案 0 :(得分:18)
你可以用这个:
$reserves = DB::table('reserves')->selectRaw('*, count(*)')->groupBy('day');
答案 1 :(得分:3)
如果您希望使用Laravel Eloquent,我假设您有一个型号名称Reserve
。在这种情况下,您可以使用此
$reserve = Reserve::all()->groupBy('day')->count();
答案 2 :(得分:0)
您可以使用:
#Laravel Raw Expressions
$reserves = DB::table('reserves')
->select(DB::raw('count(*) as reserves_count'))
->groupBy('day')
->get();
OR
$reserves = Reserve::select(['reserves.*'])
->groupBy('day')
->count();
进一步阅读transactions