我的数据库中有一个问题表,这里有问题表的列和数据类型
Field Datatype
QID BIGINT
UserID INT(11)
Question VARCHAR(100)
Description Text
Date DateTime
Status TINYINT
这个表预计有大约2百万个条目我的问题是如果我根据QID,UserID或问题搜索记录,我如何计算查询执行时间。
答案 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你只能找到块访问次数,但计算查询执行时间是不可能的,你只能估计它,因为你永远不知道你的实际硬件上将执行多少进程,这就是你无法计算的原因处理器只为您的流程服务多长时间。
之后的块访问次数