Dies ist eine bekannte Frage, aber die beste Lösung, die ich gefunden habe, ist etwa:
SELECT TOP N *
FROM MyTable
ORDER BY Id DESC
Ich habe eine Tabelle mit vielen Zeilen. Es ist nicht möglich, diese Abfrage zu verwenden, da dies viel Zeit in Anspruch nimmt. Wie kann ich also die letzten N Zeilen auswählen, ohne ORDER BY zu verwenden?
BEARBEITEN
Entschuldigung, doppelte Frage von diesem
id
indiziert, wird dieser Index nur umgekehrt gescannt und nach den ersten 5 Zeilen angehalten. Wenn es nicht indiziert ist, muss eine TOP N
Sortierung durchgeführt werden. Dies wird nicht schlimmer sein als jede andere Art, es zu tun. Es sortiert nicht die gesamte Tabelle (obwohl es die gesamte Tabelle scannen müsste)