ugrás a tartalomhoz

ORDER BY lassú

aspirany · 2008. Okt. 15. (Sze), 12.52
Sziasztok!

van egy lekérdezésem mysql-ben.

a kalkuláció táblában 238 ezer rekord van.
a marka táblában a márkák nevei kb 500 rekord.
a márka táblán az indexek markaID primary + markanev-re is indexelek

explain:
id  select_type  table type  possible_keys  key            key_len             ref   rows                                  Extra                            
1     SIMPLE     kalkulacio     ALL         NULL             NULL              NULL  NULL                                  238858  Using temporary; Using filesort  
1     SIMPLE     partner        eq_ref      PRIMARY          PRIMARY            4    april_utf.kalkulacio.partnerID        1                                                                
1     SIMPLE     marka          eq_ref      PRIMARY          PRIMARY            4    april_utf.kalkulacio.markaID          1                                                                
1     SIMPLE     termekcsoport  eq_ref      termekcsoportkod termekcsoportkod   4    april_utf.kalkulacio.termekcsoportkod 1


SELECT
  marka.markanev,
  termekcsoport.termekcsoportnev,
  kalkulacio.kalkulacioID,
  kalkulacio.ertekhatar_tol,
  kalkulacio.ertekhatar_ig,
  kalkulacio.szorzo,
  kalkulacio.fix,
  kalkulacio.evek,
  partner.partnernev,
  marka.markaID,
  kalkulacio.akcioszam
FROM
  kalkulacio
  INNER JOIN marka ON (kalkulacio.markaID = marka.markaID)
  INNER JOIN termekcsoport ON (kalkulacio.termekcsoportkod = termekcsoport.termekcsoportkod)
  INNER JOIN partner ON (kalkulacio.partnerID = partner.partnerID)  ORDER BY marka.markanev LIMIT 180959,22


gondolom az indexeléssel lessz baj.

Ha az ORDER BY kiveszem gyors a lekérdezés

Köszönöm a segítséget
 
1

markaID

pp · 2008. Okt. 16. (Cs), 06.40
Ha jól gondolom nyugodtan használhatnád a markaID-t is az order by-ban. Az összes kapcsoló mezőre is tettél indexet?
kalkulacio.termekcsoportkod = termekcsoport.termekcsoportkod
kalkulacio.partnerID = partner.partnerID

InnoDB táblában az elsődleges kulcs szerint vannak fizikailag sorba rendezve az adatok. Én még ezt kipróbálnám.

pp
2

Igen

aspirany · 2008. Okt. 16. (Cs), 13.26
Vannak indexek

termekcsoport.termekcsoportkod
partner.partnerID