mysql 查询子父节点

查询所有子节点:

SELECT * FROM
			 (
			    SELECT * FROM blade_dept
			 ) T1,
			 (SELECT @PV := '1367646653837742082' ) T2
		WHERE ((FIND_IN_SET(parent_id,@PV) > 0
		AND @PV := CONCAT(@PV, ',', id)))

查询所有父节点,包含自己


SELECT T2.* FROM (
            SELECT
               @R AS _ID,
               (SELECT @R := parent_id FROM blade_dept WHERE id = _ID) AS PAR_ID,
               @L := @L + 1 AS LVL
            FROM
            (SELECT @R := '1453895863325241345', @L := 0) VARS,
            blade_dept H
            WHERE @R <> 0
        ) T1
        INNER JOIN blade_dept T2 ON T1._ID = T2.id
        ORDER BY T1.LVL DESC


版权声明:本文为yuchunfangxxx原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。