Ver Mensaje Individual
  #2 (permalink)  
Antiguo 17/12/2014, 16:00
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 4 meses
Puntos: 447
Respuesta: obtener y agrupar dependencias

Hola juanito1712:

Suponiendo que el id de un padre siempre será menor que el id de un hijo, puedes hacerlo así:

Código MySQL:
Ver original
  1. mysql> SELECT * FROM tabla;
  2. +------+-------+---------+
  3. | id   | padre | nombre  |
  4. +------+-------+---------+
  5. |    1 |     0 | 1       |
  6. |    2 |     0 | 2       |
  7. |    3 |     1 | 1.1     |
  8. |    4 |     2 | 2.1     |
  9. |    5 |     3 | 2.1.1   |
  10. |    6 |     5 | 2.1.1.1 |
  11. +------+-------+---------+
  12. 6 rows in set (0.00 sec)
  13.  
  14. mysql> SELECT * FROM tabla ORDER BY IF(padre = 0, id, padre), id;
  15. +------+-------+---------+
  16. | id   | padre | nombre  |
  17. +------+-------+---------+
  18. |    1 |     0 | 1       |
  19. |    3 |     1 | 1.1     |
  20. |    2 |     0 | 2       |
  21. |    4 |     2 | 2.1     |
  22. |    5 |     3 | 2.1.1   |
  23. |    6 |     5 | 2.1.1.1 |
  24. +------+-------+---------+
  25. 6 rows in set (0.00 sec)

haz la prueba y nos comentas, si tienes problemas, postea los casos que no cumplen con la ordenación para poder indicarte alguna otra alternativa.

Saludos
Leo.