Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL]Co jest szybsze ?
Forum PHP.pl > Forum > Przedszkole
szczabik
Witam

Chciał bym się zapytać co jest szybsze ?
  1. SELETC COUNT(id) FROM tabela


Czy

  1. SELETC COUNT(*) FROM tabela


Lepiej dawać * czy nazwę kolumny ?
Spawnm
Sprawdź i nam powiedz , przecież sam możesz to zobaczyć :/
blooregard
Sprawdź dla porównania jescze tak:

  1. SELECT SQL_CALC_FOUND_ROWS * FROM tabela; SELECT FOUND_ROWS()
szczabik
Dzięki za pomoc jakbym sam mógł sprawdzić to bym nie pisał. Nawet głupiej odpowiedz co jest szybsze jest ciężko uzyskać.
TheaSiX
Sprawdź czas wykonywania skryptu używając funkcji microtime(). Pobierasz czas przed i po wykonaniu skryptu i odejmujesz wartości od siebie, wtedy dostajesz czas wykonywania skryptu.

Ja sprawdziłem u siebie, zaledwie na 80 wpisach w bazie i większość czasu (id) jest szybsze, ale czasami (*) bije na głowę. Myślę, że trzeba by to przetestować przy >10000 rekordach..
pyro
A ja bym wybrał pierwszą z brzegu metodę, bo jak by na to nie patrzeć różnice czasowe są tak znikome, że szkoda sobie zawracać tym głowę co jest szybsze
Wicepsik
  1. SELECT count(*) FROM online

Strona wygenerowana w 0.00422 sek.

  1. SELECT COUNT(id) FROM online


Strona wygenerowana w 0.00441 sek.

Przy 22686 rekordach.

  1. <?php
  2. print_r(mysql_fetch_array(mysql_query('SELECT count(id) FROM online')));
  3. ?>


  1. <?php
  2. mysql_query('SELECT SQL_CALC_FOUND_ROWS * FROM online');
  3. print_r(mysql_fetch_array(mysql_query('SELECT FOUND_ROWS()')));
  4. ?>


Strona wygenerowana w 0.01288 sek.
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.