SQL SERVER 查看sql执行计划

发布时间 2023-12-07 10:56:39作者: 了悟

SQL SERVER 是Transact-SQL

和mysql差别还蛮大的

语法

SET SHOWPLAN_ALL { ON | OFF }

SET SHOWPLAN_ALL ON   是开启执行计划,在这个查询下的sql会返回执行信息,需要提前且单独执行

SET SHOWPLAN_ALL 的设置是在执行或运行时设置,而不是在分析时设置。需要提前执行

如果 SET SHOWPLAN_ALL 为 ON,则 SQL Server 将返回每个语句的执行信息但不执行语句,并且 Transact-SQL 语句不会执行。 该选项设置为 ON 后,将返回有关所有后续 Transact-SQL 语句的信息,直到该选项设置为 OFF 为止。 例如,如果在 SET SHOWPLAN_ALL 为 ON 时执行 CREATE TABLE 语句,则 SQL Server 将从涉及同一个表的后续 SELECT 语句返回错误信息,告知用户指定的表不存在。 因此,对此表的后续引用将失败。 如果 SET SHOWPLAN_ALL 为 OFF,则 SQL Server 将执行语句,但不生成报表。

 官方文档:https://learn.microsoft.com/zh-cn/sql/t-sql/statements/set-showplan-all-transact-sql?view=sql-server-ver16&redirectedfrom=MSDN