部门表 system_dept
parent_id 父部门Id
id 部门表主主键id
SELECT
sd.id
FROM
(
SELECT
@ids AS _ids,
( SELECT @ids := GROUP_CONCAT( id ) FROM system_dept WHERE FIND_IN_SET( parent_id, @ids ) ) AS cids,
@l := @l + 1 AS LEVEL
FROM
system_dept,
( SELECT @ids := #{deptId}, @l := 0 ) b
WHERE
@ids IS NOT NULL
) ID,
system_dept sd
WHERE
FIND_IN_SET( sd.id, ID._ids )
ORDER BY
id DESC