SQL Server相当于MySQL的解释

SQL Server相当于MySQL的解释,sql,sql-server-2008,keyword,Sql,Sql Server 2008,Keyword,我正在阅读一个SQL教程,它使用关键字EXPLAIN来查看查询是如何执行的。我在SQLServer2008中尝试过,但没有成功 如何获得等效的结果?我认为EXPLAIN关键字是一个MySQL概念-等效的Microsoft SQL server概念是执行计划 获取执行计划的最简单方法是在SQLServerManagementStudio的查询菜单中打开“显示实际执行计划”菜单项。或者,您可以在此处阅读更深入的执行计划指南: 本文将详细介绍什么是执行计划、如何获取执行计划以及不同的执行计划格式 SQ

我正在阅读一个SQL教程,它使用关键字EXPLAIN来查看查询是如何执行的。我在SQLServer2008中尝试过,但没有成功

如何获得等效的结果?

我认为EXPLAIN关键字是一个MySQL概念-等效的Microsoft SQL server概念是执行计划

获取执行计划的最简单方法是在SQLServerManagementStudio的查询菜单中打开“显示实际执行计划”菜单项。或者,您可以在此处阅读更深入的执行计划指南:

本文将详细介绍什么是执行计划、如何获取执行计划以及不同的执行计划格式

SQL Server最接近的等效语句是:


在SQLServerManagementStudio查询窗口中,可以运行SET-SHOWPLAN_ALL ON或SET-SHOWPLAN_XML ON,然后运行查询。此时,它将不会返回查询的结果集,而是返回实际的执行计划。然后,当您运行SET SHOWPLAN_ALL OFF或SET SHOWPLAN_XML OFF并运行查询时,您将再次获得一个结果集。

请注意,Microsoft在SQL 2012中向TSQL语法添加了一个解释命令,但它仅适用于Azure SQL数据仓库和并行数据仓库,因此不适用于常规的RDBMS产品

它提供了XML格式的执行计划,并有助于显示计划中将分布在仓库节点上的部分

资料来源:

在SSMS中,我得到了18.3.1突出显示有问题的查询,并点击CTRL+L


这就是Tobias提到的-Query->Display Estimated Query Plan

有关执行计划的更多信息,请参见此处:。在SSMS的某些版本中,菜单项将被称为“显示估计查询计划”。谢谢,现在找到了@tobia+1,@kragen+1。它也可以在Oracle中使用:将AUTOTRACE设置为OFF-ON,然后使用SQL stmt。您可以使用表DBMS\u XPLAN.display中的SELECT plan\u TABLE\u输出来显示计划;可能重复设置SHOWPLAN_ALL ON-谢谢,为什么这不是公认的答案,而不是告诉我咨询GUI的答案?这应该是答案。