set statistics time on select describe from h where k = 1 order by adate desc select describe from h where k = 1 order by adate desc select ID from h where k = 1 order by adate desc select ID from h where k = 1 order by adate desc
set statistics time off
SQL Server 分析和编译时间: CPU 时间 = 0 毫秒,占用时间 = 1 毫秒。 (31137 行受影响) SQL Server 执行时间: CPU 时间 = 125 毫秒,占用时间 = 591 毫秒。 SQL Server 分析和编译时间: CPU 时间 = 0 毫秒,占用时间 = 1 毫秒。 (31137 行受影响) SQL Server 执行时间: CPU 时间 = 140 毫秒,占用时间 = 647 毫秒。 SQL Server 分析和编译时间: CPU 时间 = 0 毫秒,占用时间 = 1 毫秒。 (31137 行受影响) SQL Server 执行时间: CPU 时间 = 47 毫秒,占用时间 = 294 毫秒。 SQL Server 分析和编译时间: CPU 时间 = 0 毫秒,占用时间 = 1 毫秒。 (31137 行受影响) SQL Server 执行时间: CPU 时间 = 47 毫秒,占用时间 = 261 毫秒。
mssql语句的CPU时间分编译阶段和执行阶段。
优化者要先搞清楚这两个阶段各用了多少CPU资源。
然后,再看有没有优化降低CPU使用量的可能
CPU时间:执行语句的时间
占用时间:从磁盘读取数据再处理总的使用时间
编译阶段:SQL Server 分析和编译时间
执行阶段:SQL Server 执行时间