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.