C'est une question connue mais la meilleure solution que j'ai trouvée est quelque chose comme:
SELECT TOP N *
FROM MyTable
ORDER BY Id DESC
J'ai une table avec beaucoup de lignes. Il n'est pas possible d'utiliser cette requête car cela prend beaucoup de temps. Alors, comment puis-je faire pour sélectionner les N dernières lignes sans utiliser ORDER BY?
ÉDITER
Désolé, question dupliquée de celle-ci
idest indexé, il analysera simplement cet index en sens inverse et s'arrêtera après les 5 premières lignes. S'il n'est pas indexé, il devra effectuer un TOP Ntri. Ce ne sera pas pire que toute autre façon de le faire. Il ne trie pas la table entière (bien qu'il faudrait scanner la table entière)