我的表有这个值,其中 Menu_id 是该特定行的 ID,Parent_Menu_id 是 Id,它告诉该值的父 Id。
例如,Menu_Id 2 的 Parent_Menu_Id 为 NULL,这意味着它没有任何父级,而 3 的 parent_menu_d 为 2,这意味着 3 是 2 的子级。
但是,我面临一个问题,将所有父值和子值一起显示,这意味着输出应该是
Menu_id | Parent_Menu_id
-------------------------
2 |
3 | 2
9 | 2
4 |
5 | 4
6 | 4
7 |
8 | 7
我试过了
select menu_id,parent_menu_id from menu_test mt where parent_menu_id=(select menu_id from menu_test where mt.parent_menu_id=menu_id)
但是,在那种情况下,我只会得到子行。
即使我尝试过
select distinct menu_id,parent_menu_id from menu_test CONNECT BY PRIOR menu_id=parent_menu_id order by menu_id,parent_menu_id
还是一样的问题一起列出
注意:两个输出看起来相同,但是当您看到 menu_id 9 时,您将得到不同之处和我想要的。