如何使用laravel ORM使用grouby和count?

时间:2018-05-16 07:08:00

标签: mysql orm group-by count laravel-5.5

我有一个地址表,其中有许多字段,如城市,病房,容忍,区,纬度,经度。我需要计算不同区域的行数。例如,我在屏幕截图中显示了以下数据库表: enter image description here 我的行包含加德满都,巴克塔普尔和贾巴作为地区。现在我需要获得包含加德满都的行数作为区域和同样。 输出应该是这样的:

array( "Kathmandu"=> 4 , "Bhaktapur" => 1 , "Jhapa"=>1 );

我找到了使用数据库查询的问题的多种解决方案。但我需要ORM方式。

1 个答案:

答案 0 :(得分:1)

您可以使用汇总查询

$districts = DB::table('address')
             ->select('district', DB::raw('count(*) as total'))
             ->groupBy('district')
             ->pluck('total','district')
             ->all();