Zitat:
Und tötlich ist es ohne Index
Das würde ich zumindest für Firebird nicht unterschreiben.
Man hat vielleicht mal schnell das sortierte Ergebnis für die ersten Datensätze da, wenn ein Index für die Sortierung verwendet wird, aber so kann das schon mal langsamer als eine Kombination aus Non-Indexed Read + Firebird In-Memory Sort werden, wenn man alle Datensätze abholt.
Der Ausführungsplan gibt darüber Auskunft, ob In-Memory Sort order Indexbasiert und dann sieht man sich am Besten die Ausführungszeit in Kombination mit einem Fetch-All an, oder halt auch gewrappt in etwa:
Code:
SELECT COUNT (*) FROM (
<eigentliches SELECT mit ORDER BY hier>
)