在本系列的前几篇文章-**SQL Server 执行计划概述和SQL Server 执行计划类型**中,我们介绍了SQL Server 查询执行的的不同阶段以及它如何生成执行计划。此外,我们还深入描述了可用于查询性能故障排除目的的 SQL Server 执行计划的不同类型和格式。在本文中,我们将讨论执行计划的图形组件以及如何分析它们。
SQL 执行计划广泛用于通过监视和排查SQL查询语句在内部执行的流程来改善查询语句的性能。为了能够从 SQL 执行计划中获益,我们需要了解 SQL 执行计划提供的不同信息。注意获取执行计划信息需要当前用户具有SHOWPLAN 权限。SYSADMIN、DBCREATOR 或 DB_OWNER 的成员无需任何额外权限即可生成执行计划。
分析SQL 的图形执行计划
让我们从一个简单的 SQL 执行计划开始。下面的 SQL 执行计划是执行简单的 SELECT 语句后生成的实际计划。你可能会问,我如何判断当前计划是实际执行计划还是估计执行计划。答案是我们可以通过图的顶部显示的结果选项卡,来确定在生成计划之前执行了查询。
SQL 执行计划的上半部分显示了当前查询的处理成本占会话中所有查询的整体处理成本的比例。如果一个会话中只有一个查询的话,比例为100%。图示如下: