私は階層構造を持つテーブルを持っています (n,n_parent,data):
例えば:
- ディレクトリ 1 (1,0,null)
- サブディレクトリ 1 (44,1,null)
- 項目 1 (83,44,a)
- 項目 2 (98,44,b)
- サブディレクトリ 2 (46,1,null)
- 項目 1 (8,46,c)
- 項目 2 (9,46,d)
- サブディレクトリ 1 (44,1,null)
- ディレクトリ 2 (4,0,ヌル)
- サブディレクトリ 1 (54,4,null)
- 項目 1 (43,54,e)
- 項目 2 (48,54,f)
- サブディレクトリ 2 (101,4,null)
- アイテム1 (19,101,g)
- 項目 2 (314,101,h)
- サブディレクトリ 1 (54,4,null)
ID がある場合、この ID でアイテムを構築します。これは親です。たとえば、ID は 83、98、48、9 です。
SELECT distinct name, n, n_parent FROM portalmdo.zre_filter a START WITH N in (83, 98, 48, 9) CONNECT BY PRIOR N_PARENT = N
Directory 1 (1,0,null)
Subdirectory 1 (44,1,null)
Item 1 (83,44,a)
Item 2 (98,44,b)
Subdirectory 2 (46,1,null)
Item 2 (9,46,d)
Directory 2 (4,0,null)
Subdirectory 1 (54,4,null)
Item 2 (48,54,f)
(順序は重要な問題ではありません)
フィールド データが親に送信されるようにします。たとえば、次のようにします。
Directory 1 (1,0,a)
Subdirectory 1 (44,1,a)
Item 1 (83,44,a)
Directory 1 (1,0,b)
Subdirectory 1 (44,1,b)
Item 2 (98,44,b)
Directory 1 (1,0,d)
Subdirectory 2 (46,1,d)
Item 2 (9,46,d)
Directory 2 (4,0,f)
Subdirectory 1 (54,4,f)
Item 2 (48,54,f)