Einzelnen Beitrag anzeigen

Benutzerbild von ChrisE
ChrisE

Registriert seit: 15. Feb 2006
Ort: Hechingen
504 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

Performancefrage

  Alt 9. Aug 2011, 13:47
Datenbank: Firebird • Version: 2.5. • Zugriff über: IBDAC
Hallo,

ich habe eine Tabelle Messungen in der sind verschiedene Informationen zu Messungen abgelegt Unter anderem auch der Startzeitpunkt als TIMESTAMP. Wenn ich jetzt die jüngste Messung haben möchte würde ich folgenden Select machen:
Code:
SELECT bla, blub, tralla FROM Messungen WHERE Startzeit = (select MAX(Startzeit) from Messungen);
Über den PrimeryKey ID: Integer kann ich nicht gehen, da die Messungen nicht zwingend chronologisch in der Datenbank abgelegt werden.

So, jetzt meine Fragen:
  • Gibt es eine Performantere Lösung (nur Select anpassen) für die Problemstellung?
  • Wenn man einen Index auf die Startzeit legen würde, würde es die Abfragegeschwindigkeit verbessern? (wobei ich nochmal klären sollte, ob es mehrere Messungen geben kann, die den selben Zeitpunkt haben. Aber das gilt für die gesammte Fragestellung )
  • Ändert es etwas an der Performance wenn man es in eine SP packt, oder ist die SELECT-Anweisung dafür zu simpel/klein?

Danke, Chris

P.S.: Gibt es eigentlich keine SQL-Tags?
Christian E.
Es gibt 10 Arten von Menschen, die die Binär lesen können und die die es nicht können

Delphi programming rules
  Mit Zitat antworten Zitat