首页 > 解决方案 > Laravel - 按日期和用户分组雄辩的查询

问题描述

我有以下数据库表“观察” 在此处输入图像描述

我正在尝试使用三个标准(日期 - user_id - Type_Name_ID)对观察结果进行分组: -

在此处输入图像描述

我无法想到如何形成一个 laravel 查询来获得所需的结果。

标签: mysqllaravelgroup-byeloquent

解决方案


通常您可以从已知的 SQL 查询语句开始获取这些结果并使用Query Builder 中提供的方法

>>> $observationsQuery = DB::table('observations')
  ->selectRaw('date, count(observation_id), user_id, Type_Name_ID')
  ->groupBy('date', 'user_id', 'Type_Name_ID');

>>> $observationsQuery->toSql();

=> "select date, count(observation_id), user_id, Type_Name_ID from "observations" 
   group by "date", "user_id", "Type_Name_ID""

推荐阅读