Spécifier ORDER BY sur une table est juste une aide pour le moteur pour accélérer les requêtes avec le même ordre. Cela ne forcera pas mysql à toujours renvoyer le résultat avec le même ordre.
Décrit dans ceci :http://dev.mysql.com /doc/refman/5.1/en/alter-table.html
"ORDER BY vous permet de créer la nouvelle table avec les lignes dans un ordre spécifique. Notez que la table ne reste pas dans cet ordre après les insertions et les suppressions. Cette option est utile principalement lorsque vous savez que vous devez principalement interroger les lignes dans un certain ordre la plupart du temps. En utilisant cette option après des modifications majeures de la table, vous pourrez peut-être obtenir de meilleures performances. Dans certains cas, cela peut faciliter le tri pour MySQL si la table est dans l'ordre de la colonne que vous souhaitez le commander d'ici plus tard. "
Vous devez donc également utiliser l'expression ORDER BY dans vos requêtes.