这是桌子
  user_id | parent_id | lft
  --------|-----------|-----
        1 |           | 0
        2 |         1 | 0
        3 |         1 | 0
        4 |         2 | 0
这是从节点 1 执行 CTE 并遍历 user_id 1 的所有子节点直到到达叶子并将遍历的 chidren lft 字段的值更新为 1 的查询
WITH RECURSIVE d AS (
  SELECT user_id
   FROM btrees
   WHERE user_id = 1
 UNION ALL
  SELECT c.user_id
   FROM d JOIN btrees c ON c.parent_id = d.user_id
)
UPDATE btrees b set lft = 1
 FROM d
 WHERE d.user_id = b.user_id
我只是要求一个相反方向的查询..即。从任何节点到根节点,所以我可以更新 lft 的值