我有一個包含ID列,ID_child列和幾個事實字段的oracle表。我知道一個ID,我想找到它的頂級父母。我知道的ID會放入ID_child字段,ID就是它的父級。 此查詢工作,但我只能得到一行,我可以做一個常規的SQL查詢。 如何獲得頂級ID?oracle sql查詢頂層查詢層次結構查詢
SELECT
item_tbl.id, item_tbl.id_child
FROM item_tbl
START WITH item_tbl.id_child = 12510646
CONNECT BY PRIOR item_tbl.id_child = item_tbl.id
結果我得到:
ID ID_CHILD
12512162 12510646
顛倒connect by語句。你有:'CONNECT BY PRIOR item_tbl.id_child = item_tbl.id'把它改爲'CONNECT BY PRIOR = item_tbl.id = item_tbl.id_child'在connect by;訂單很重要!您可以按級別降序添加級別和順序以查看父級或子級別,或者使用連接方式中的其他方法查看路徑。 – xQbert
這工作**我扭轉了它,現在我得到每個級別的頂部。 –