Autor | Zpráva | ||
---|---|---|---|
Medvídek Profil |
#1 · Zasláno: 22. 4. 2011, 14:18:20 · Upravil/a: Medvídek
Chci se zeptat, zda-li by šel tento dotaz udělat nějak šetrněji, protože pokud uvedu oba JOINy, tak dotaz trvá 1,5559 sec.
Pokud uvedu jen první JOIN a neberu tedy v potaz sdílené objekty, tak trvá dotaz pouze 0.0051 sec SELECT o.oid, o.ow, o.name AS oname, o.dk, o.ad, o.reg_code, p.n AS pname, p.p_id, s.de FROM o LEFT JOIN p ON o.oid = p.oid LEFT JOIN s ON o.oid = s.oid WHERE o.ow = ".$_SESSION["aID"]." OR s.user = ".$_SESSION["aID"]." ORDER BY s.st ASC, o.name ASC, p.n ASC Díky moc. |
||
Kajman_ Profil * |
#2 · Zasláno: 22. 4. 2011, 14:25:13
Zkontrolujte si explain a indexy. Pak bych zkusil podmínky na owner a user dát přímo k joinu. Pokud ani to nepomůže, tak bych zkusil využít union.
|
||
Medvídek Profil |
#3 · Zasláno: 22. 4. 2011, 14:34:43
Kajman:
Děkuji za postřeh s Explain, opravdu chyběl jeden index :) |
||
Časová prodleva: 13 let
|
0