0

当我尝试运行它时,我得到“无法在类上找到适当的构造函数”。

SQL:

select c.*, count(s.student_id)
from class_tbl c    
left join students_tbl s on c.class_id = s.student_id
group by c.class_id 

这是我尝试过但似乎不起作用的方法 - HQL:

select new Class(class, count(students.studentId))
from Class as class    
left join class.students as students
group by class.classId  

我的对象类上有一个构造函数,例如:

public Class(Class class, long studentCount){
    // [...]
}
4

1 回答 1

0

首先,不要使用 Class 作为类名,它是一个保留字。

我认为您的 HQL 应该如下所示:

"select new map(class, count(students.studentId) as studentCount) from Class class left 
join fetch class.students students group by class.classId");
于 2013-03-14T15:24:49.937 回答