首页 > 解决方案 > 如何使用递归查询将列添加到选择中?

问题描述

因此,我在女巫行中有一个帐户表,可能有也可能没有父帐户(0 表示它没有父帐户):

+----+-----------+
| id | parent_id |
+----+-----------+
|  1 |         2 |
|  2 |         0 |
|  3 |         1 |
|  4 |         3 |
|  5 |         4 |
+----+-----------+

我试图为每一行添加前 3 个父母,所以我会得到这样的结果:

+----+-----------+----------+----------+----------+
| id | parent_id | parent_1 | parent_2 | parent_3 |
+----+-----------+----------+----------+----------+
|  1 |         2 | 2        | null     | null     |
|  2 |         0 | null     | null     | null     |
|  3 |         1 | 2        | 1        | null     |
|  4 |         3 | 2        | 1        | 3        |
|  5 |         4 | 2        | 1        | 3        |
+----+-----------+----------+----------+----------+

我想我可以用递归查询来做到这一点,但我还没有设法构建一个有效的查询。任何帮助,将不胜感激。

标签: sqlrecursive-query

解决方案


推荐阅读