回答

收藏

如何在嵌套集中查找特定level2节点的特定子级

技术问答 技术问答 3305 人阅读 | 0 人回复 | 2023-09-12

我有一个标准的嵌套集模型,每个节点都有名字,lft和rgt属性。
1 i0 Q, L& `, A' Y/ m我可以用以下方法找到特定员工的老板:
! J: O! ~8 P* n  Y2 M& }  z) {SELECT P2.* FROM Personnel AS P1,Personnel AS P2WHERE P1.lft BETWEEN P2.lft AND P2.rgtAND P1.name = "Bob"ORDER BY P2.lft我也可以通过添加限制和偏移来找到level2管理器:
2 V6 X/ |$ V8 \) uSELECT P2.* FROM Personnel AS P1,Personnel AS P2WHERE P1.lft BETWEEN P2.lft AND P2.rgtAND P1.name = "Bob"ORDER BY P2.lftLIMIT 2 OFFSET 1在某些情况下,我可能有多个名为“鲍勃”的员工在不同的level2经理下班。2级管理员的名字是唯一的。; d) w! }( d3 O! K" v) C" Z
我需要一个查询,这个查询叫做 Susan”的level所有经理名为 2Bob”的员工。
' W. u; u. J& L: Z编辑:我的查询只需要回到在玛丽工作的鲍勃身边,因为他是唯一一苏珊二级经理的鲍勃。9 E; }: S' c) z) ~6 g% {5 d2 t
            Big Boss    /                                   \Brian   Susan  |       |Susan   Mary  |       | Bob     Bob               
+ t7 Y0 Z9 i4 d* O4 Z    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则