根据父级id查询所有子级id
SELECT
id
FROM
(
SELECT
@r AS _ids,
(
SELECT @r := GROUP_CONCAT(id)
FROM demo_role
WHERE FIND_IN_SET(parentId, @r)
) AS subIds
FROM
( SELECT @r := 12 ) vars, demo_role
WHERE @r IS NOT NULL
) sub,
demo_role
WHERE
FIND_IN_SET(
id,
sub._ids
)
查询父级
SELECT t.pId FROM
(
SELECT
@r AS _id,
(
SELECT @r := parentId
FROM demo_role
WHERE id = _id
) AS pId
FROM
(SELECT @r := '69') vars,
demo_role
WHERE
@r IS NOT NULL
) t
WHERE pId IS NOT NULL