Forum: Datenbanken
by MyRealName,
27. Mai 2014
Hatte ich doch vorher, mkinzler empfohl mir, einen zu machen über die beiden Spalten. Dadurch ist es viel schneller geworden (von 2h auf 10m)
Forum: Datenbanken
by MyRealName,
27. Mai 2014
Plan
PLAN SORT (JOIN (ED1 INDEX (ENSAMBLED_IDX_TRANSCODE), ED2 INDEX (ENSAMBLED_IDX1_ITEMID_TC)))
Execute time = 11m 3s 407ms
Forum: Datenbanken
by MyRealName,
26. Mai 2014
Definitiv. Werd es wohl ncohmal neu schreiben, aber in Delphi... da brauch ich unter 10 Sekunden für diese Liste.
Forum: Datenbanken
by MyRealName,
26. Mai 2014
Den Ausführungsplan sieht man erst nach dem Ausführen.. der führt immer noch aus. :shock:
Die Indices haben leider nicht geholfen :( Hatte sie ja schon auf allen 4 Feldern als es 2 Stunden dauerte...
Forum: Datenbanken
by MyRealName,
26. Mai 2014
Enttäuschend : gerade schnell ein kleines Programm geschrieben welches das einfach über Locate in einem TVirtualTable macht (also mit 2 VTs). Dauerte ungefähr 10 Sekunden um die Liste zu haben.
Kann Firebird nicht einfach 2 Listen machen und das abgleichen ? Kann doch nicht so schwer sein...
Forum: Datenbanken
by MyRealName,
26. Mai 2014
Technisch gesehen müsste EXISTS gerade wschnell sein, weil es eine Boolean-Abfrage ist. Count zum Beispiel muss durch alle Register rennen un dir die genaue Anzahl zu sagen, EXISTS nur bis zum ersten Vorkommen.
ich probiere es gerade wie Du sagtest mit einem LEFT JOIN
SELECT DISTINCT ED1.Item, ED1.Location, ED1.ItemID
FROM EnsambleD ED1
LEFT JOIN EnsambleD ED2 ON (ED1.Itemid = ED2.Itemid...
Forum: Datenbanken
by MyRealName,
26. Mai 2014
Es existieren indices auf ItemID, Transcode, Item und Location (letztere beiden durch einen FK), die ersten hatte ich schon gemacht.