在SQL Server Management Studio的SQL Sever选项中启用统计时间后,我会收到以下信息。
SQL Server解析和编译时间:CPU时间= 15毫秒,已用时间 = 47毫秒。
(1745行(s)受影响)
SQL Server执行时间:CPU时间= 31毫秒,已用时间= 99 女士。 SQL Server解析和编译时间:CPU时间= 0 ms,已过去 时间= 0毫秒。
有四次以毫秒为单位。现在,哪一个是运行查询所花费的实际时间?他们似乎不是亲戚。
答案 0 :(得分:1)
这取决于“运行查询所花费的时间”的含义
解析时间是准备查询所需的时间,通过语法检查以及创建高度规范化的任务列表。
Copile Time是通过Algerbrizer运行查询所需的时间(这是将对象名转换为对象ID等,然后为查询选择或创建执行计划的组件。
将这两个阶段合在一起的时间记录为Parse和Compile Time。
执行时间是实际执行或运行已编译计划所花费的时间。因此,如果您的意思是执行查询需要多长时间,那么这就是SQL Server执行时间下的经过时间。
但是,如果你的意思是查询完成需要多长时间,从我点击执行的那一刻起,那么这就是Parse和Compile Time部分以及SQL Server执行中的Elapsed Time的和时代部分。
CPU Times(Parse和Compile部分以及Execution Times部分)是处理器在此部分上花费的时间。因此,为了计算持续时间,可以忽略CPU时间。