Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Optymalizacja zapytania
Forum PHP.pl > Forum > Bazy danych > MySQL
patryczakowy
Dzisiaj admin zwrócił mi uwagę na to że moje zapytanie generuje byt duże obciążenie
  1. SELECT id, temat FROM tabela WHERE aut=1 ORDER BY rand() LIMIT 0,1

pytanie jak to zoptymalizować chodziło mu pewnie o zastosowanie ORDER BY rand()
z góry wielkie dzięki za odpowiedź
tvister
Podobno lepiej wygenerować losowe id php-em i wtłoczyć to sql-a.
patryczakowy
Tak do tego też się już doszperałem na stronie http://net.tutsplus.com/tutorials/other/to...best-practices/
  1. $r = mysql_query("SELECT count(*) FROM user");
  2. $d = mysql_fetch_row($r);
  3. $rand = mt_rand(0,$d[0] - 1);
  4. $r = mysql_query("SELECT username FROM user LIMIT $rand, 1");

i teraz mam pytanie czy to jest najbardziej optymalne rozwiązanie ?
Czy ja w jakiś sposób mogę uzyskać takie informacje jak które zapytania powodują największe obciążenie?

darko
slowlogi, zerknij np tu
patryczakowy
te slow logi to jest właśnie to co by mnie interesowało tylko nie mogę się doszperać w jaki sposób mogę je obejrzeć?
darko
To do admina pytanie, które zapytania generują zbyt duże obciążenie, powinien dysponować taką informacją, skoro zwraca Ci uwagę, niech poszuka w logach.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.