Sélectionnez N premiers Enregistrements Commandés par X, Mais Ont des Résultats dans l'Ordre Inverse

Je vais essayer d'obtenir les N premiers enregistrements (au moment de la commande par colonne X), mais le jeu de résultats dans l'ordre inverse. La déclaration suivante est incorrect, mais probablement démontre ce que je suis après:

SELECT * FROM (SELECT TOP 10 * FROM FooTable ORDER BY X DESC) ORDER BY X ASC

Par exemple, la colonne X pourrait être un ID ou un timestamp; je veux les 10 derniers enregistrements, mais souhaitez retourné dans l'ordre chronologique.

Pourquoi ne pas SELECT TOP 10 * FROM FooTable ORDER BY X ASC ?
Parce que je voudrais obtenir les 10 derniers enregistrements, mais ils seraient retournés dans l'ordre chronologique inverse.

OriginalL'auteur I. J. Kennedy | 2010-04-03