Un peu de SQL

J'ai été confronté à un "problème" dernièrement.

J'ai codé un chat, et pour les nouveaux arrivants, il faut afficher les 10 derniers messages (donc ORDER BY date DESC LIMIT 0,10). Cependant, dans le chat, il faut afficher les messages par ordre croissant. Il faut donc récupérer par ordre décroissant, puis retrier par ordre croissant ! On pourrait le faire avec une fonction PHP pour retrier les tableaux (mais cela impliquerai de recréer une fonction de tri...) ; ou sinon directement dans la requête ! C'est finalement très simple :

SELECT *  
FROM (SELECT * FROM chat  
ORDER BY date DESC  
LIMIT 0,10) AS table  
ORDER BY table.date ASC

On réalisé une imbrication de requêtes ;) .