父到子查询 WITH RECURSIVE t AS ( SELECT * FROM tb where id = 1 UNION SELECT a.* FROM tb a, t b WHERE a.parent_id = b.id ) SELECT * FROM t 查询结果: 子到父查询 WITH RECURSIVE xz AS ( SELECT * FROM tb WHERE id = 5 UNION ALL SELECT y.* FROM tb y, xz b WHERE b.parent_id = y.id ) SELECT * from xz ORDER BY id 查询结果: