2012-07-31 22 views

Odpowiedz

10

Spróbuj tego prostego przykładu

mysql> set profiling=1; 
mysql> select count(*) from comment; 
mysql> select count(*) from message; 
mysql> show profiles; 

+----------+------------+------------------------------+ 
| Query_ID | Duration | Query      | 
+----------+------------+------------------------------+ 
|  1 | 0.00012700 | select count(*) from comment | 
|  2 | 0.00014200 | select count(*) from message | 
+----------+------------+------------------------------+ 
2 rows in set (0.00 sec) 
2

Możesz napisać zapytanie wewnątrz sub-zapytania z COUNT rade jak:

SELECT COUNT(1) 
FROM (SELECT * FROM your_table WHERE ...) a 

Może to spowolnić zapytanie lekko, jak to robi COUNT również, ale myślę, że jego znikome.

Do pomiaru wydajności kwerendy można włączyć PROFILES w MySQL jako:

SET profiling = 1; 

Aby uzyskać więcej informacji o PROFILES zobaczyć here.

+0

mówi "ERROR 1248 (42000): Każda tabela pochodzi musi mieć swój własny alias"? – TIMEX

+0

podać dowolny alias do tabeli pochodnej, ponieważ podałem "a" na końcu – Omesh

0
$starttime = microtime(true); 

//Do your query and stuff here 

$endtime = microtime(true); 
$duration = $endtime - $starttime; //calculates total time taken 
Powiązane problemy