Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.276 Beiträge
Delphi 10.4 Sydney
|
AW: Vorhandensein eines Records prüfen
13. Jul 2017, 11:57
Hallo,
select distinct 1 from mytable where myid is not null ganz klar schneller als
Das liefert doch aber zurück, ob es überhaupt einen Eintrag in der Tabelle gibt.
Ich denke, dass First schneller als Distinct ist.
Das Distinct muss ja erst die Ergebnismenge ermitteln, um dann darauf Distinct auszuführen.
Bei der SELECT RDB$RELATIONS.RDB$RELATION_NAME Abfrage stellt sich für mich die Frage,
was passiert, wenn der letzte Eintrag meiner Ergebnismenge (where myid=X) gelöscht wird.
Ist die Statistik dann trotzdem korrekt, zeigt also keine Einträge an,
oder wird der gelöscht Eintrag immer nicht berücksichtigt?.
Any record that has had its primary key modified will appear twice if the old version has not been garbage collected and deleted records will continue in the count until they are garbage collected.
Das sieht hier eben so aus, als ob auch die Garbage-Einträge mit gezählt werden.
Heiko
Geändert von hoika (13. Jul 2017 um 11:59 Uhr)
|