我有一个对象说出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;

08-05 07:11