sql >> Base de Datos >  >> RDS >> Mysql

crear consulta de bucle de vista de árbol

En la forma en que almacenó el árbol ahora, no es posible obtener el árbol completo en una consulta SQL pura. Debe escribir un bucle en algún otro idioma (C#, procedimiento almacenado que admita bucles, ...) para recuperar el árbol.

Esto es un buen artículo que describe cómo trabajar con su forma de almacenar el árbol (incluida la obtención del árbol y la eliminación de elementos del árbol).

Aún más interesante, ese artículo también describe una forma de almacenar árboles en una tabla de base de datos que permitir obtener todo el árbol en una sola consulta. Se llama recorrido de árbol de reserva . Puedes buscarlo para más información. Encontré una implementación de C# . Implica algo más de lógica que la forma en que está usando ahora, pero es más eficaz para todos los árboles, excepto para los más pequeños.