c语言sscanf函数的用法是什么
298
2022-08-24
树形结构数据自定义的递归查询
数据就比如是Oracle里面的实例方案,employees表。
Oracle里是这样写: select * from employees start with employee_id=176 connect by prior manager_id=employee_id;
不过这个是Oracle数据库里实现的。如果我要查询一个节点的所有祖先(上级)节点,自定义一个递归查询应该怎么写?因为考虑到以后要移植。
如果你的表设计的不错的话, 由孩子找所有的父记录也是可以做到的。 比如我们现在在表里的设计加上了一个pathinfo, 或者叫hierarchy的字段这个字段是表示这个节点的路径的 比如TableA id pid pathinfo 1 1 2 1 1,2 3 2 1,2,3 4 2 1,2,4 5 3 1,2,3,5 这里可以用类似 select a2.id from tablea a1, tablea a2 where instr(a1.pathinfo||',', a2.id||',', 1, 1) > 0 来查到所有的父亲,不过这里instr也不是标准的sql,不同的数据库instr可能是不一样的名字。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~