Einzelnen Beitrag anzeigen

jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#19

AW: SELECT FIRST 1 im JOIN möglich ?

  Alt 14. Nov 2017, 15:36
Habe die query probiert, die braucht aber sehr lange.
..
Sorry wenn mir machmal die Worte auf deutsch nicht geläufig sind, aber in Deutschland habe ich fast nichts in Warenwirtschaften programmiert, alles was ich darüber weiss ist eigentlich in spanisch.
Das habe ich befürchtet. Deine alte Abfrage wird immer langsamer, weil sie per inline subselect alle Werte einzeln nachschlägt. Das sind aber nur 1000 +x wenn ich das richtig verstanden habe und es läuft vermutlich über den pk index, also sozusagen Direktzugriff.
Meine Version mit klassischem Join baut die ursprüngliche "First 1" Menge erstmal über alle Daten auf, das sind 750 K, ein riesiges Aggregat.

Du hast noch nicht verraten, wie das indiziert ist, z.B. Index auf fetch? Wäre natürlich doof, wenn der nicht da ist, macht aber in Summe nicht so einen Unterschied.
Wie gesagt, die Join Variante kann man wahrscheinlich tunen, z.B. mit fetcha Untergrenze = Wunschdatum - größte Lücke.

Wenn Du noch die Index scripte der beiden Tabellen lieferst und das Mengengerüst bestätigst (cp_Fetch 750k*, itemAct 1k*), könnte man da noch mal genau hinschauen.

Das mit den Worten finde ich nicht wild, man kann ja fragen, wenn es unverständlich ist.

* passt irgendwie nicht zu "kleine Tabelle" aus Deinem letzten Beitrag
Gruß, Jo

Geändert von jobo (14. Nov 2017 um 15:38 Uhr)
  Mit Zitat antworten Zitat