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

MySql:ORDEN POR padre e hijo

Incluyendo la clasificación de niños por id:

ORDER BY COALESCE(parent, id), parent IS NOT NULL, id

Ejemplo de SQL Fiddle

Explicación:

  • COALESCE(parent, id) :Primero ordene por (agrupando efectivamente) la identificación del padre.
  • parent IS NOT NULL :Coloque la fila principal en la parte superior del grupo
  • id :finalmente ordenar todos los hijos (mismo padre y parent no es nulo)