Supongamos que tengo la siguiente red:

Donde 2 y 3 son referidos directos de 1, o sea que conforman el 1º nivel de su red. A su vez 4 es referido de 2, por lo que 4 pertenece al primer nivel de la red de 2 y al segundo nivel de la red de 1. Y asi sucesivamente.
Mi consulta es como almacenar los datos para que la consulta a base para armar la red de una persona sea óptima, creo que lo ideal es traer todos los datos en 1 sola consulta pero no se me ocurre como hacerlo.
La idea es que me quede todo almacenado de la siguiente manera:
- 1- 2- 4- 8
- 9
 
- 5
 
- 4
- 3- 6
- 7
 
 
- 2
Como última aclaración les digo que la cantidad de niveles de la red es un número variable, en principio son 3 niveles pero podrian ser más o menos. Y la cantidad de personas por nivel también varia.
Espero se entienda y me puedan tirar una mano.
 
 

 Ayuda con Optimización de consultas
 Ayuda con Optimización de consultas 




