Juste un truc, bien que ce ne soit pas la bonne section.
Les ORDER BY ça nécessite souvent pas mal de ressources sur le serveur MySQL. Surtout que dans la plupart des cas il doit créer une table temporaire pour ensuite la relire et obtenir le résultat.
Quand il n'y a pas beaucoup d'entrées et que ça peut tenir dans une quantité raisonnable de mémoire, ça décharge énormément le serveur SQL de récupérer toutes les données non triées, puis de faire le tri en PHP par exemple avec la fonction usort().