求一Hibernate查询
一个表: Student
在实体关系中,Student继承了User
---------------------------
id stuGrade tutor_id
---------------------------
1 2008 101
2 2008 101
3 2009 101
4 2008 102
5 2009 102
6 2010 102
要得到学生表中,所有老师和其带的年级
(比如在此表中,101老师带了2008、2009两个年级,102老师带了2008/2009/2010三个年级)
即,我要得到:
---------------------------
stuGrade tutor_id
---------------------------
2008 101
2009 101
2008 102
2009 102
2010 102
通过写SQL可以实现
"select stuGrade,tutor_id from student group by tutor_id,stuGrade"
但是涉及到两个字段,及stuGrade,tutor_id,
通过Hibernate的createSQLQuery().list();获得的是一个结构不明的对象结合,怎样获得具体的那两个字段。或者有什么其他的方法?
(一个字段还好说,用createSQLQuery().uniqueResult()就行,但是2个字段怎么办)
用createSQLQuery().addEntiry(Student.class).list();转化为一个List<Student>也不行。报错!
求大侠指点
在实体关系中,Student继承了User
---------------------------
id stuGrade tutor_id
---------------------------
1 2008 101
2 2008 101
3 2009 101
4 2008 102
5 2009 102
6 2010 102
要得到学生表中,所有老师和其带的年级
(比如在此表中,101老师带了2008、2009两个年级,102老师带了2008/2009/2010三个年级)
即,我要得到:
---------------------------
stuGrade tutor_id
---------------------------
2008 101
2009 101
2008 102
2009 102
2010 102
通过写SQL可以实现
"select stuGrade,tutor_id from student group by tutor_id,stuGrade"
但是涉及到两个字段,及stuGrade,tutor_id,
通过Hibernate的createSQLQuery().list();获得的是一个结构不明的对象结合,怎样获得具体的那两个字段。或者有什么其他的方法?
(一个字段还好说,用createSQLQuery().uniqueResult()就行,但是2个字段怎么办)
用createSQLQuery().addEntiry(Student.class).list();转化为一个List<Student>也不行。报错!
求大侠指点
作者: feyyee 发布时间: 2011-06-13
得到是List<Object[]>
作者: stonesleelove 发布时间: 2011-06-13
引用 1 楼 stonesleelove 的回复:
得到是List<Object[]>
得到是List<Object[]>
谢谢。。
作者: feyyee 发布时间: 2011-06-13
Hibernate查询某些列的时候,它返回的是一个Object[]类型的数组。其长度为查询的列个数。
作者: liutianxiong888 发布时间: 2011-06-13