我在这里遇到了这个问题,非常感谢任何帮助。 我需要像这样转换树表/层次结构:
id name parent
1 aaa
2 bbb 1
3 ccc 1
4 ddd 2
5 eee 2
6 fff 5
其中
id - 是唯一标识符
parent - 是给定记录与之相关的父项的id
上表需要从深层次转换为平面水平表,如下图所示,其中parent
列被展平并分布在多个列中,从左到右显示层次结构:
parent descendent_1 descendent_2 descendent_n+1 id name
null null null ... 1 aaa
1 null null ... 2 bbb
1 null null ... 3 ccc
1 2 null ... 4 ddd
1 2 null ... 5 eee
1 2 5 ... 6 fff
深度可能因记录而异。 以下是数据集的示例:
CREATE TABLE table_1 (id int, name text, parent int);
INSERT INTO table_1 VALUES
(1,'aaa',null),
(2,'bbb',1),
(3,'ccc',1),
(4,'ddd',2),
(5,'eee',2),
(6,'fff',5),
(7,'ggg',6),
(8,'hhh',7),
(9,'iii',3),
(10,'jjj',3),
(11,'kkk',8),
(12,'lll',11);
万分感谢!