Citace Původně odeslal zivan Zobrazit příspěvek
Nasel jsem informaci, ze COUNT(DISTINCT user) je dost pomale (http://dev.mysql.com/doc/refman/5.0/...mization.html), tak muzes otestovat toto:

SELECT page, COUNT(user) FROM (SELECT DISTINCT user, page FROM temp) as temp2 GROUP BY page;
Zalezi v akom dotaze to pouzijes. Z tojho dotazu vyplyvaju dve veci:
1. (SELECT DISTINCT user, page FROM temp) robi full scan tabulky temp a uklada si vysledok niekam do pamete
2. SELECT page, COUNT(user) FROM (SELECT DISTINCT user, page FROM temp) as temp2 GROUP BY page robi dalsi full san tabulky nad tabulkou ulozenou v pameti. Cize v konecnom dosledku robis 2 fullscany miesto jednoho. Nehovoriac o tom ze subselecty nie su podporovane vo vsetkych verziach mysql. Ano distinct je pomaly resp count(distinct user) je pomalsi ako count(*), ale osobne si myslim, ze moznost ktoru sme ponukli bude rychlejsia ako tvoj selekt.