mysql查询所有子节点 非递归

mysql查询所有子节点 #查叶子节点 #查孩子节点

不用代码递归

不用存储过程,临时表,只用单纯的sql语句

SELECT
    t3.college_code 
FROM
    (
    SELECT
    t1.college_code,
IF
    ( find_in_set( t1.parent_org_code, @pids ) > 0, @pids := concat( @pids, ',', t1.college_code ), 0 ) AS ischild 
FROM
    ( SELECT college_code, parent_org_code FROM t_college t WHERE t.STATUS = 1 ORDER BY parent_org_code, college_code ) t1,
    ( SELECT @pids := '22300' college_code ) t2 
    ) t3 
WHERE
    t3.ischild != 0





-- 表结构:  t_college:      id,   college_code (机构编码),   parent_org_code (父机构编码)

大家把上面的

college_code 换成你的code,
parent_org_code 换成父节点code,
t_college 换成你的表名
posted @ 2021-11-19 16:21  阿米诚  阅读(820)  评论(0编辑  收藏  举报