Autor Zpráva
reso
Profil
Dobrý deň,
mám taký problém so SQL kódom.
Moja situácia je takáto:
chcem vypísať z databázy steam_id, kde je krajina určená. A to tak, že ich zoradí podľa počtu prejdených máp. Všetko síce funguje ako má, len trvá celú večnosť kým to načíta... To aj napriek tomu, že tam mám limit 15.

Tu je SQL kód:
$res = mysql_query("SELECT p.country,p.steam_id,p.nick FROM server_player_info p LEFT JOIN server_top15v2 t ON p.steam_id=t.steam_id WHERE p.country='".$krajina."' GROUP BY p.steam_id ORDER BY COUNT(DISTINCT t.mapname) DESC, p.nick ASC LIMIT 15");



keď je krajina Slovensko tak to načítava cez 2 minúty (v tabulke server_player_info je 1200 ludi, ktori su zo Slovenska, a v tabulke server_top15v2 vyse 10000 zapisov, kde su ludia z tej krajiny)
keď si dám krajinu Brazíliu, načíta to za cca 5 sekúnd (v tabulke server_player_info je 1 clovek, co je z Brazilie, a v tabulke server_top15v2 asi 3 zapisy)
reso
Profil
ďakujem za akúkoľvek pomoc.
bohyn
Profil
Pouzivas indexy?
reso
Profil
Myslel som si ze som mal, checkol som to a v server_top15v2 nebol,
Díky moc. :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0