计算查询执行时间

时间:2013-11-30 12:18:35

标签: mysql database

我的数据库中有一个问题表,这里有问题表的列和数据类型

Field           Datatype
QID             BIGINT
UserID          INT(11)
Question        VARCHAR(100)
Description     Text
Date            DateTime
Status          TINYINT

这个表预计有大约2百万个条目我的问题是如果我根据QID,UserID或问题搜索记录,我如何计算查询执行时间。

2 个答案:

答案 0 :(得分:4)

您可以使用General Query Log但它也有一些缺点,所以在某些生产环境中运行之前请先考虑一下。

您可以像以下一样使用它:

SET profiling = 1;

然后执行您的查询,如

SHOW PROFILES;

修改: -

我不知道这是否是最好的方法,但这可能取决于CPU和系统上运行的进程数量:

declare @start timestamp
declare @stop timestamp

set @start = select NOW();
//Your query
set @stop = select NOW();

执行时间 = @stop - @start

答案 1 :(得分:1)

Afaik你只能找到块访问次数,但计算查询执行时间是不可能的,你只能估计它,因为你永远不知道你的实际硬件上将执行多少进程,这就是你无法计算的原因处理器只为您的流程服务多长时间。

要查看first answer of this question best explanation i guess

之后的块访问次数