Mysql递归查询上级
匿名 · 更新于 2021/12/30
表名
tableName
字段
id 自身ID
name 名称
parent_id 父级ID
递归,查询本级及所有直属上级
SELECT T2.id, T2.name FROM ( SELECT @r AS _id, (SELECT @r := parent_id FROM tableName WHERE id = _id) AS parent_id, @l := @l + 1 AS lvl FROM (SELECT @r := 5, @l := 0) vars, tableName h WHERE @r <> 0) T1 JOIN tableName T2 ON T1._id = T2.id ORDER BY T1.lvl DESC;
