这样也可以?我都是用存储过程或者Java写。

解决方案 »

  1.   

    lz在设计数据库表的时候应该存在一种子父关系才能够通过一条sql语句才能实现功能呢
      

  2.   

    好像还是不行 ,我们都是在java中实现的。
      

  3.   

    楼主oracle中select * from tab start with superDept=3 connect by prior id=superDept;
    这样是OK的,只是不知道hql中是否支持start with  connect by prior
      

  4.   

    5楼的却是是给了一点启发,但是一般大都是使用mysql的 是不支持这条sql语句的,所以hql肯定也无法支持。1楼3楼说的 使用java来处理的话,如果记录有上万条,而又要分页显示的话,不可能把上万条记录拿到内存中在获取吧,存储过程也不可实现。如果5楼的方法在oracle中可以用的话,对应mysql的SQL语句有吗?可以实现吗
      

  5.   

    楼主我木有用过mysql,悲剧啊=。=
    不过帮你找了个友情链接http://blog.sina.com.cn/s/blog_3d85b3e50100cs9h.html
      

  6.   

    只会程序实现,HQL能实现吗,lz使用表连接试试,自连接。。