【发布时间】:2021-08-04 04:58:43
【问题描述】:
我有一个包含分层数据的简单表:
+----+----------+--------+-------+
| id | name | parent | level |
+----+----------+--------+-------+
| 1 | province | Null | 1 |
+----+----------+--------+-------+
| 2 | city | 1 | 2 |
+----+----------+--------+-------+
| 3 | fire | 2 | 3 |
+----+----------+--------+-------+
| 4 | ems | 2 | 3 |
+----+----------+--------+-------+
我正在尝试构建一个递归查询来为每个级别添加一个新列。像这样:
+----+----------+---------+---------+
| id | level_1 | level_2 | level_3 |
+----+----------+---------+---------+
| 1 | Province | Null | Null |
+----+----------+---------+---------+
| 2 | Province | City | Null |
+----+----------+---------+---------+
| 3 | Province | City | Fire |
+----+----------+---------+---------+
| 4 | Province | City | EMS |
+----+----------+---------+---------+
我不知道如何解决这个问题,我对 CTE 查询不是很好。有什么建议吗?
【问题讨论】:
标签: sql sql-server tsql common-table-expression