マテリアライズドパス> これは基本的にブレッドクラムトレイルを含み、再帰クエリを使用せずにノードのすべての子孫を選択するなどの操作を簡単にするためです。
マテリアライズドパスモデル
マテリアライズドパスモデルの考え方は、階層内の各ノードをツリー内のその位置にリンクすることです。これは、すべてのノードの祖先の連結リストを使用して行われます。このリストは通常、区切られた文字列で保存されます。以下の「Linage」フィールドに注意してください。
CAT_ID NAME CAT_PARENT Lineage
1 Home .
2 product 1 .1
3 CD’s 2 .1.2
4 LP’s 2 .1.2
5 Artists 1 .1
6 Genre 5 .1. 5
7 R&B 6 .1. 5.6
8 Rock 6 .1. 5.6
9 About Us 1 .1
テーブルの移動
Select lpad('-',length(t1.lineage))||t1.name listing
From category t1, category t2
Where t1.lineage like t2.lineage ||'%'
And t2.name = 'Home';
Order by t1.lineage;
リスト
Home
-product
–CD’s
–LP’s
-Artists
–Genre
—R&B
—Rock
-About Us