Aller au contenu

L’étape Table : fermeture de hiérarchie remonte la chaîne des parents de chaque ligne et écrit une ligne de sortie pour chaque ligne et chacun de ses ancêtres. Il n’y a aucune limite de profondeur. La colonne de distance vaut 0 pour la ligne elle-même, 1 pour son parent, et ainsi de suite.

Un parcours s’arrête à une racine, à un parent que la table des nœuds ne contient pas, ou à un nœud déjà rencontré : une boucle dans les identifiants de parent ne peut donc pas s’exécuter indéfiniment. Une boucle conserve tous les ancêtres jusqu’au nœud répété. Une boucle qu’aucune racine n’atteint se termine à son plus petit identifiant.

  • Lignes de départ du parcours : la table dont les lignes lancent les parcours.
  • Colonne d’ID et Colonne parent : l’identifiant de chaque ligne et celui de son parent. NULL, ou l’identifiant de la ligne elle-même, désigne une racine.
  • Table des nœuds (facultatif) : la table des nœuds que le parcours remonte. Laissez vide pour utiliser la table source.
  • Colonne d’ID des nœuds et Colonne parent des nœuds (facultatif) : par défaut, les colonnes d’ID et parent. Un identifiant présent sur plusieurs lignes suit une ligne racine, sinon son plus petit parent.
  • Colonne d’ancêtre : la colonne de sortie contenant l’identifiant de l’ancêtre. La valeur par défaut est Ancestor.
  • Colonne de distance : le nombre d’étapes depuis la ligne de départ. La valeur par défaut est Distance.
  • Chaînes construites le long du chemin (facultatif) : une ligne par colonne de texte à construire au fil de la remontée. Chaque ligne comprend :
    • Colonne de sortie : la nouvelle colonne.
    • Colonne source : la colonne lue comme texte, et Colonne des nœuds à lire dans la table des nœuds lorsqu’elle diffère.
    • Délimiteur : le texte placé entre les valeurs.
    • Distinct : ignore une valeur que le texte contient déjà.
    • Racine en premier : place chaque ancêtre avant le texte déjà construit.
  • Table de sortie : l’emplacement d’écriture du résultat.

La sortie contient les colonnes d’ID et parent, les colonnes d’ancêtre et de distance, ainsi qu’une colonne de texte pour chaque chaîne que vous construisez.