Hallo,
ich versuche über zwei Tabellen hinweg zu suchen.
Tabelle 1
Kunden
KNR | EMAIL | TYP
-----------------
1 | mail1@| e
2 | mail2@| e
Tabelle 2
Adressen
ID | KNR | NAME | PLZ
----------------------
1 | 1 | test | 74374
2 | 2 | test | 54564
meine MySQL Abfrage funktioniert, ist aber extram langsam, weil es in Tabelle 1 über 20000 Kunden gibt und in Tabelle 2 über 30000 Adressen.
Den INDEX habe ich auf KNR, PLZ und EMAIL.
Im Suchfeld gebe ich zum Beispiel folgendes ein
mail1@
SELECT ... FROM tabelle1 LEFT JOIN tabelle2 ON tabelle2.knr=tabelle1.knr WHERE tabelle1.email='mail1@' OR tabelle2.plz='mail1@'
Wo und wie kann ich diese "SUCHE" optimieren.
Ohne dieses OR in der WHEREKLAUSEL läuft es wesentlich schneller - aber so sucht MySQL in Tabelle1 in allen Reihen.