Einzelnen Beitrag anzeigen

alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#14

Re: SQL-Statement vereinfachen

  Alt 11. Jun 2008, 08:05
Zitat von Angel4585:
Was so ein Index ausmachen kann, aus 10 Minuten werden 5 Sekunden
Bei 10.000 Einträgen immer noch zu lange. Pack das Produkt auch mal in diesen Index ('compound index'). Könnte was bringen, wenn pro Email-Adresse viele Produkte vorhanden sind.

Ohne Index muss der Server alle Datensätze sequentiell durchgehen, um einen passenden Eintrag zu finden. In deinem Fall sind das 10.000 mal eine Schleife à la "For i:=1 to 10000 Do FindProduct(Record[i])".
Mit Index findet der Server den passenden Eintrag eigentlich "sofort". In deinem Fall fällt somit die innere Schleife quasi weg. Dafür muss der Server dann für eine Email-Adresse alle Datensätze widerum sequentiell nach den Produkten durchsuchen.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat