我有一个对象说出Student与以下参数:
Student{
String name;
int marks;
String department;
Subject subject;
//getters and setters
}
我想使用crudRepository按部门从学生组中获取计数(学生),部门。
我们将在crudrepository中定义的方法的返回类型是什么?我应该如何编写整个流程?我正在例外。
以下是存储库的代码片段:
@Query("select new com.myProject.MyObject(mec.serviceName, count(mec)) " +
"from migration_entity_count mec where mec.workflowRequestId = :workflowRequestId " +
"group by mec.serviceName order by mec.serviceName")
List<EntitiesByServiceName> getMigrationEntitiesCountByServiceName(@Param("workflowRequestId") Long workflowRequestId);
}
MyObject有2个参数:Long和String
最佳答案
下面的查询将为您提供预期的结果,在Java中,返回类型为ResultSet。您可以将其隐藏为自己的对象类型。
SELECT department, COUNT(*)
FROM Student
GROUP BY department;