Hallo,
hänge gerade an einem Problem in SQL und finde dazu leider keine Antworten. Würde mich freuen wenn mir hier jemand weiterhelfen kann.
Es geht prinzipiell um ein Laufzeit-Problem. Ich mache aus bestimmten Gründen, (ist ein anderes Thema), eine SQL-Abfrage die etwa so aussieht:
Meine Datenbanken umfasst 100.000 Zeilen.
Je nachdem können das ziemlich viele "OR" 's werden und das führt zu sehr langen Ladezeiten.
Die Idee: Ich möchte die möglichen Zeilen vorher eingrenzen und aufbauend darauf den oben genannte Query anweden.
Frage: Wie mache ich das?
So klappt es nämlich nicht:
So müsste SQL ja die Suche nur auf einem Element durchfühen nämlich dem mit der ID 1. Die Laufzeit verändert sich aber zum oben genannten Fall nicht.
Hat jemand eine Idee?
hänge gerade an einem Problem in SQL und finde dazu leider keine Antworten. Würde mich freuen wenn mir hier jemand weiterhelfen kann.
Es geht prinzipiell um ein Laufzeit-Problem. Ich mache aus bestimmten Gründen, (ist ein anderes Thema), eine SQL-Abfrage die etwa so aussieht:
Code:
SELECT DISTINCT Wert FROM Tabelle WHERE (LEFT(Wort , 2)= "ab" OR LEFT(Wort , 1)= "c" OR LEFT(Wort , 4)= "cdef" OR LEFT(Wort , 3)= "acd" ...
Meine Datenbanken umfasst 100.000 Zeilen.
Je nachdem können das ziemlich viele "OR" 's werden und das führt zu sehr langen Ladezeiten.
Die Idee: Ich möchte die möglichen Zeilen vorher eingrenzen und aufbauend darauf den oben genannte Query anweden.
Frage: Wie mache ich das?
So klappt es nämlich nicht:
Code:
SELECT DISTINCT Wert FROM Tabelle WHERE (ID = 1) AND ((LEFT(Wort , 2)= "ab" OR LEFT(Wort , 1)= "c" OR LEFT(Wort , 4)= "cdef" OR LEFT(Wort , 3)= "acd" ...
Hat jemand eine Idee?
Kommentar