Da hier viele Fachmänner sind und ich nun auch nicht mehr weiter weiß, wollte ich mal fragen, ob jemand hierzu eineLösung hätte.
Ich habe ein kleines Artikelverwaltungsprogramm und mir nun mal eine Testdatenbank mit 1 Mio Artikel angelegt.
Nun erfolgt die Übersicht schon extrem langsam (282.6353 Sekunden - knapp 5 Minuten).
Der SQL Query sieht folgendermaßen aus:
Code: Select all
SELECT id, artnr, liartnr, preis, aktiv, einheit, sonderangebot, sonderpreis, bestellt, auftragswert, artname, artname2, aktiv, frontpage, topangebot
FROM shop_artikel t1 LEFT JOIN shop_artikeltext t2
ON t1.id=t2.artid
WHERE sprachid='0'
ORDER BY artname LIMIT 0,50
Code: Select all
1 SIMPLE t2 ref arttext_sprachid,arttext_artid arttext_sprachid 4 const 988050 Using where; Using filesort
1 SIMPLE t1 eq_ref PRIMARY,artikel_artid PRIMARY 4 testartikel.t2.artid 1
- arttext_sprachid,arttext_artid und auch arttext_artname
Allerdings letzteren benutzt er nicht, wie kann ich ihn dazu bringen, auch den Index für den Artikelnamen zu benutzen?
Oder hat jemand eine andere Optimierungsidee ?
Vielen Dank,
Gruß
Marco