我想从数据中建立一个父子链接,如下所示:
<表类>
id_node
main_node
水平
tbody><<tr>A9 A9 0 92 A9 1 923 A9 2 9234 A9 3 表类>
您可以使用join
:
select t.*, tparent.id_node as parent
from t left join
t tparent
on tparent.main_node = t.main_node and
tparent.level = t.level - 1;
您也可以使用lag()
:
select t.*,
lag(id_node) over (partition by main_node order by level) as parent
from t