Hallo,
oft muss ich prüfen, ob mindestens ein Record in einer Tabelle vorhanden ist
Version 1
die klassische Vorgehensweise: Select Count(*)
Version 2
wir nutzen "neue"
FB-Funktionen
Select First 1 Wert From Tabelle
Version 3
tricky Ausnutzung von Firebird-Besonderheiten beim Exists
Select 1 From RDB$DataBase Where Exists(Select Wert From Tabelle)
Wobei das durch Version 2 mit dem First ja jetzt wohl gegenstandslos ist
Das
Where habe ich weggelassen, auf dem Where-Feld ist auf jeden Fall ein Index.
Die Suche läuft also auf jeden Fall über einen Index
(viele Datensätze, gute Selektivität des Suchfeldes)
Mein Gefühl sagt mir, dass Version 2 die schnellste Variante ist.
Der
Query-Plan ist aber bei V1 und V2 der gleiche.
Was meint Ihr?