Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Conectar por Equivalente Anterior para MySQL


O MySQL não suporta consultas recursivas, então você precisa fazer da maneira mais difícil:
  1. Selecione as linhas em que ParentID = X onde X é sua raiz.
  2. Colete o Id valores de (1).
  3. Repita (1) para cada Id de (2).
  4. Continue recorrendo manualmente até encontrar todos os nós folha.

Se você conhece uma profundidade máxima, pode unir sua tabela a ela mesma (usando LEFT OUTER JOINs) até a profundidade máxima possível e, em seguida, limpar os NULLs.

Você também pode alterar sua representação de árvore para conjuntos aninhados .