MYSQL: Zu Langsam

Pol

Mitglied
Hallo
Ich habe die folgende Abfrage, welche gut funktioniert aber sehr langsam ist. Es sind ca. 1000 Dateneinträge in der Tabelle Buchungen. Für eine Abfrage warte ich einige Minuten.
Ich bin Anfänger und wäre für jeden Vorschlag sehr froh. Maximum werden 100 Einträge pro Abfrage benötigt. Hier ist die Anfrage:
FROM
buchungen
INNER JOIN kontostamm ON (buchungen.b_code = kontostamm.ks_code)
INNER JOIN steuercode ON (kontostamm.ks_code = steuercode.scode_code)
INNER JOIN mandant ON (steuercode.scode_code = mandant.man_code)
WHERE
((((buchungen.b_ktsoll = kontostamm.ks_knr) AND
(buchungen.b_sollscode = kontostamm.ks_steuercode)) OR
((buchungen.b_kthaben = kontostamm.ks_knr) AND
(buchungen.b_habscode = kontostamm.ks_steuercode)) OR
((buchungen.b_gkonto = kontostamm.ks_knr) AND
(buchungen.b_gscode = kontostamm.ks_steuercode))) AND
((kontostamm.ks_steuercode = steuercode.scode_nr) OR
(steuercode.scode_nr IS NULL))) OR
((steuercode.scode_konto = kontostamm.ks_knr) AND
(steuercode.scode_nr = buchungen.b_sollscode)) OR
((steuercode.scode_konto = kontostamm.ks_knr) AND
(steuercode.scode_nr = buchungen.b_habscode)) OR
((steuercode.scode_konto = kontostamm.ks_knr) AND
(steuercode.scode_nr = buchungen.b_gscode))

Danke
 
Hallo

Ja, ich habe die Indexe für die Suchfelder definiert. Diese habe ich im via PhpMyadmin gemacht.

In der DB sind ca. 4000 Einträge. Ich glaube es nicht, dass diese für MySQL zuviele sind, oder?
Danke
 
Zurück