Pular para o conteúdo

A etapa Tabela: Fechamento de hierarquia percorre cada linha subindo pela sua cadeia de pais e grava uma linha de saída para cada linha e cada um de seus ancestrais. Não há limite de profundidade. A coluna de distância vale 0 para a própria linha, 1 para o pai dela, e assim por diante.

Um percurso termina em uma raiz, em um pai que a tabela de nós não contém ou em um nó já encontrado, de modo que um ciclo nos IDs de pai não pode ser executado indefinidamente. Um ciclo mantém todos os ancestrais até o nó repetido. Um ciclo que nenhuma raiz alcança termina em seu menor ID.

  • Linhas de partida do percurso — a tabela cujas linhas iniciam os percursos.
  • Coluna de ID e Coluna de pai — o ID de cada linha e o ID do pai dela. NULL, ou o próprio ID da linha, marca uma raiz.
  • Tabela de nós (opcional) — a tabela de nós que o percurso sobe. Deixe em branco para usar a tabela de origem.
  • Coluna de ID dos nós e Coluna de pai dos nós (opcional) — usam por padrão as colunas de ID e de pai. Um ID com várias linhas segue uma linha de raiz; caso contrário, segue seu menor pai.
  • Coluna de ancestral — a coluna de saída que contém o ID do ancestral. O padrão é Ancestor.
  • Coluna de distância — os passos a partir da linha inicial. O padrão é Distance.
  • Textos montados ao longo do caminho (opcional) — uma linha para cada coluna de texto a ser montada conforme o percurso sobe. Cada linha tem:
    • Coluna de saída — a nova coluna.
    • Coluna de origem — a coluna lida como texto, e Coluna de nós para ler da tabela de nós quando for diferente.
    • Delimitador — o texto entre os valores.
    • Distintos — ignora um valor que o texto já contém.
    • Raiz primeiro — coloca cada ancestral antes do texto montado até então.
  • Tabela de saída — onde o resultado é gravado.

A saída tem as colunas de ID e de pai, as colunas de ancestral e de distância e uma coluna de texto para cada texto que você monta.