【发布时间】:2012-07-28 22:54:35
【问题描述】:
当我运行查询时,我不希望它打印到控制台。 我只是想看看时间。
9166 rows in set (0.90 sec)
这就是我想要看到的一切,而不是打印所有内容。
【问题讨论】:
当我运行查询时,我不希望它打印到控制台。 我只是想看看时间。
9166 rows in set (0.90 sec)
这就是我想要看到的一切,而不是打印所有内容。
【问题讨论】:
试试这个简单的例子
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)
【讨论】:
dev.mysql.comhttps//dev.mysql.com/path
您可以使用COUNT 在子查询中编写您的查询,以达到以下目的:
SELECT COUNT(1)
FROM ( SELECT * FROM your_table WHERE ...) a
它可能会稍微减慢您的查询速度,因为它也在做COUNT,但我认为它可以忽略不计。
为了测量查询的性能,您可以在 MySQL 中打开PROFILES:
SET profiling = 1;
有关PROFILES 的更多详细信息,请参阅here。
【讨论】:
$starttime = microtime(true);
//Do your query and stuff here
$endtime = microtime(true);
$duration = $endtime - $starttime; //calculates total time taken
【讨论】:
SELECT 1;