階層
不對稱的 n 級階層往往用於代表像是資料中的地理或組織維度。這些類型的階層通常儲存在相鄰的節點表格,亦即該表格中每筆記錄都會對應到一個節點,並且有一個欄位會包含對父節點的參考。
在這類表格中,節點僅儲存在一筆記錄內,但仍可有任意數目的子節點。當然,表格可包含其他用來描述節點屬性的欄位。
相鄰的節點表格最適合用於維護,但在日常工作中難以使用。於是,查詢和分析會改用其他表示法。展開的節點表格是一個常用的表示法,其中階層內的每一層級都會儲存在個別欄位。展開的節點表格中的層級可輕易地用於像是樹狀結構等。hierarchy 關鍵字可用在載入指令碼中,將相鄰的節點表格轉換為展開的節點表格。
範例:
Hierarchy (NodeID, ParentNodeID, Title, 'Manager') LOAD NodeID, ParentNodeID, Title FROM 'hierarchy.txt' (txt, codepage is 1252, embedded labels, delimiter is ',', msq);
展開的節點表格的問題在於不容易使用層級欄位進行搜尋或選取,因為需要先知道要在哪個層級內搜尋或選取。上階表格是解決了這個問題的不同表示法。此表示法又稱為橋接表格。
對於資料中找到的每個子/上階關聯,上階表格就會包含一筆記錄。該表格會包含子節點與上階節點的索引鍵和名稱;也就是說,每筆記錄都會描述某特定節點屬於哪個節點。hierarchybelongsto 關鍵字可用在載入指令碼中,將相鄰的節點表格轉換為上階表格。