Mysql
 sql >> Base de données >  >> RDS >> Mysql

MySql :ORDRE PAR parent et enfant

Y compris le tri des enfants par identifiant :

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

Exemple SQL Fiddle

Explication :

  • COALESCE(parent, id)  :Triez d'abord par (en regroupant effectivement) l'identifiant du parent.
  • parent IS NOT NULL  :Placer la ligne parente au-dessus du groupe
  • id :Enfin trier tous les enfants (même parent, et parent n'est pas nul)