Saludos amigos, posiblemente sea algo sencillo, pero nose si sera que mi cabeza no computa pero no le he podido encontrar solucion, talvez me ayuden a encontrar una luz o una solucion.
Tengo una tabla de categorias que será recursiva para tener categorias padres e hijos, es decir, CATEGORIA_PADRE1 puede tener hijos y nietos. Por el momento, solo seran tres niveles, es decir padre,hijo,nieto pero queda la posibilidad de que sean mas niveles, aunque de eso me preocupo despues.
La tabla ademas tiene un campo de ordenacion interno, es decir, del padre1 como quiero que queden ordenados los hijos y de los hijos tambien puedo definir como quiero que queden ordenados los nietos.
El punto es que necesito hacer un query que obtenga el listado de categoria_id y categoria _nombre ordenado por padre, hijos, nietos en el orden del campo de ordenacion, ej:
Categoria Padre: Bienes y raices
hijo1: Compra y Venta (campo orden=1)
hijo2: Alquileres (campo orden=2)
hijo3: Otros (campo orden=3)
el hijo1 del hijo1: Casas (campo orden=1)
el hijo 2 del hijo1: Apartamentos (campo orden=2)
el hijo 3 del hijo1: otros en compra y venta(campo orden=3)
el hijo1 del hijo2: Casas (campo orden=1)
el hijo2 del hijo2: Apartamentos (campo orden=2)
el hijo3 del hijo2: Otros Alquileres(campo orden=3)
Y el resultado que busco del query ordenado seria:
Bienes y Raices
Compra y Venta
Casas
Apartamentos
Otros en compra y venta
Alquileres
Casas
Apartamentos
Otros Otros Alquileres
Otros (ojo este es el hijo3 del padre)
La estructura de la tabla es la siguiente:
Y el query que tengo y que no funciona es
Alguien me podria dar una luz de como ordenar de esa manera o que podria hacer para lograr dicho resultado.
De antemano gracias por sus ayudas y aportes.