Table Hierarchy Closureステップ
テーブル: 階層クロージャ ステップは、各行を親のチェーンに沿ってたどり上がり、行とその各祖先ごとに1行の出力行を書き込みます。深さの制限はありません。距離列は、その行自身が0、親が1、というように増えていきます。
たどる処理は、ルート、ノードテーブルにない親、またはすでに通過したノードで停止します。そのため、親IDにループがあっても無限に実行されることはありません。ループがある場合は、繰り返されるノードまでのすべての祖先が保持されます。どのルートにも到達しないループは、最小のIDで終了します。
ソースとオプション
Section titled “ソースとオプション”- たどり始める行 — たどる処理を開始する行を持つテーブルです。
- ID列 と 親列 — 各行のIDと、その親のIDです。NULL、または行自身のIDはルートを示します。
- ノードテーブル (オプション) — たどり上がる対象となるノードのテーブルです。空白のままにすると、ソーステーブルを使用します。
- ノードID列 と ノード親列 (オプション) — デフォルトはID列と親列です。複数の行を持つIDは、ルート行があればそれに従い、なければ最小の親に従います。
- 祖先列 — 祖先のIDを保持する出力列です。デフォルトは
Ancestorです。 - 距離列 — 開始行からのステップ数です。デフォルトは
Distanceです。 - パスに沿って作成される文字列 (オプション) — たどり上がる際に組み立てるテキスト列ごとに1行です。各行には次の項目があります。
- 出力列 — 新しい列です。
- ソース列 — テキストとして読み取る列です。ノードテーブルで異なる場合は、ノード列 でノードテーブルから読み取る列を指定します。
- 区切り文字 — 値の間に入れるテキストです。
- 重複排除 — テキストにすでに含まれている値をスキップします。
- ルートを先頭に — それまでのテキストの前に各祖先を置きます。
- 出力テーブル — 結果の書き込み先です。
出力には、ID列と親列、祖先列と距離列、および組み立てる文字列ごとに1つのテキスト列が含まれます。
- 複数テーブル結合 — クロージャを値に結合し直します
- Savant分析の移行