Existe-t-il un moyen de parcourir les données d'arborescence en SQL? Je le sais connect by
dans Oracle, mais existe-t-il une autre façon de le faire dans d'autres implémentations SQL? Je demande parce que l'utilisation connect by
est plus facile que d'écrire une boucle ou une fonction récursive pour exécuter la requête pour chaque résultat.
Étant donné que certaines personnes semblent être déroutées par l'expression "données d'arbre", je vais expliquer davantage: ce que je veux dire, c'est en ce qui concerne les tables qui ont un parent_id
champ ou similaire qui contient une clé primaire d'une autre ligne de la même table.
La question vient d'une expérience où je travaillais avec des données stockées de cette manière dans une base de données Oracle et savais que ce connect by
n'est pas implémenté dans d'autres SGBD. Si l'on devait utiliser du SQL standard, il faudrait créer un nouvel alias de table pour chaque parent que l'on voudrait remonter. Cela pourrait facilement devenir incontrôlable.