在SQL语句调优的时候,大部分都会查看语句执行时间,究竟SQLSERVER显示出来的统计结果是什么意思? 下面看一下例子 比较简单的语句 : 复制代码 代码如下: 1 SET STATISTICS TIME ON 2 USE [
在SQL语句调优的时候,大部分都会查看语句执行时间,究竟SQLSERVER显示出来的统计结果是什么意思? 下面看一下例子 比较简单的语句: 复制代码 代码如下: 1 SET STATISTICS TIME ON 2 USE [pratice] 3 GO 4 SELECT * FROM [dbo].[Orders] 结果: 复制代码 代码如下: SQL Server 分析和编译时间: CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。 SQL Server 执行时间: CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。 SQL Server 执行时间: CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。 SQL Server 分析和编译时间: CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。 (121317 行受影响) SQL Server 执行时间: CPU 时间 = 109 毫秒,占用时间 = 2506 毫秒。 语句的CPU时间分编译阶段和执行阶段。优化者要先搞清楚这两个阶段各用了多少CPU资源。 然后,再看有没有优化降低CPU使用量的可能 上面的CPU时间是指:执行语句的时间 而占用时间是指:从磁盘读取数据再处理总的使用时间 编译阶段: SQL Server 分析和编译时间: 执行阶段: SQL Server 执行时间: