Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#5

Re: aktuellsten Record (anhand Datum/Uhrzeit) ermitteln

  Alt 28. Jan 2008, 18:43
Zitat von hoika:
die Frage war aber nicht der Index, sondern das First 1.
Wird das von FB gesondert schon beim Execute benutzt,
oder baut er das Result-Set komplett auf und gibt dann
nur das 1. Ergebnis zurück ?
Zuerst kommt das Sortieren. Beim Indirekten Sortieren werden die eigentlichen Daten nicht im Speicher gehalten.
Es macht (im Prinzip) keinen Unterschied, ob die Tabelle 5 oder 100 Felder hat oder wieviele Felder im Resultset sein sollen.
Danach kommt die Ausgabe des Resultsets. Die SQL Engine erkennt schon nach der Ausgabe des 1. Records, dass sie fertig ist und hört auf.
=> also baut er das Result-Set nicht komplett auf

Zitat von hoika:
PS: Dass der Index desc sein muss, ist auch klar.
Wenn FB "schlau" ist und der Index aufsteigend ist, die Sortierung aber absteigend sein soll, dann wird FB
den Indexbaum einfach "rückwärts" durchlaufen.
Nur wenn EventDate aufsteigend, aber nach EventTime absteigend sortiert werden soll, aber ein gemeinsamer Index auf den Feldern liegt, kann die SQL Engine den Index nicht verwenden.
Andreas
  Mit Zitat antworten Zitat