Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: mysql_result vs. COUNT(*)
Forum PHP.pl > Forum > PHP
arczi
hey,

tablica pare tys. rekordow, jak myslicie ktore zapytanie wykona sie szybciej?

  1. <?php
  2. mysql_result( mysql_query( 'SELECT COUNT(id) from files'), 0 );
  3. ?>


OR

  1. <?php
  2. mysql_num_rows( mysql_query('SELECT* from files') );
  3. ?>



pytam z czystej ciekawosci biggrin.gif
Cienki1980
Aby znaleźć odpowiedź na to pytanie, stwórz sobie tablicę, w php wypełnij ją kilkoma tysiącami rekordów a w innym skrypcie wywołaj oba zapytania i sprawdź czas np za pomocą microtime()
SongoQ
@arczi Juz nawet dla niewielkiej liczby rekordow 1 przypadek powinien byc szybszy nie mowiac juz jak bedziesz mial miliony rekordow. 1 zwraca 1 rekord gdzie liczenie i tak jest po pkey a 2 zwraca wszystko do php i na podsawie liczby krotek jest zwracana wartosc. O ile pamietam to juz w PG i Oracle nie mozna pobrac ilosci rekordow bez wczesnijeszego odczytania - mowie tutaj o przypadku 2.
arczi
dzieki, nie sprawdzalem zadna funkcja, ale w sumie tlumaczenie SongoQ wydaje sie byc bardzo logiczne smile.gif

jak dla mnie 1st sposob smile.gif
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.