日期:2014-05-18  浏览次数:20575 次

隔层获取数据,有什么好方法。例如:学校-班级-组-学生 ,彼此是上下级关联,没有跳级关联。
隔层获取数据,有什么好方法。例如:学校-班级-组-学生 ,彼此是上下级关联,没有跳级关联。(即,班级里有学校学校id,组里面有班级id,学生里有组id)。现在我想知道一个学校里的总学生数有什么办法?目前我的解决方法是,嵌套循环,然后设置计数值,迭代出来。请问各位有什么好的方法、》java、sql、hibernate、思路、等等都可以。
迭代 Java SQL Hibernate 行业数据

------解决方案--------------------
如果你这种需求比较大的话 建议在学生表里面加上schoolid 不然只能循环嵌套了
------解决方案--------------------
表左关联,然后count
select count(1) from 学校 left join 班级 left join 组 left join 学生;
------解决方案--------------------
引用:
Quote: 引用:

表左关联,然后count
select count(1) from 学校 left join 班级 left join 组 left join 学生;

但是id好像还是要迭代啊,每一层都需要上一层的id,这个我考虑过不过没有测试.

直接在SQL里面写还好吧,如果你的表设计成这种样子确实没有办法。
------解决方案--------------------
HQL 
select count(stu) from Student stu where stu.group(学生表对应的组实体).Class(班级).School=?