我正在阅读一个SQL教程,该教程使用关键字EXPLAIN来查看查询的执行方式。我在SQL Server 2008中尝试过它但没有成功。
如何获得相同的结果?
答案 0 :(得分:18)
我认为EXPLAIN
关键字是MySQL概念 - 等效的Microsoft SQL服务器概念是执行计划。
获取执行计划的最简单方法是在SQL Server管理工作室中打开“显示实际执行计划”菜单项(在查询菜单中)。或者,您可以在此处阅读有关执行计划的更深入的指南:
本文详细介绍了执行计划是什么,如何获取执行计划以及不同的执行计划格式。
答案 1 :(得分:7)
SQL Server最接近的等效语句是:
SET SHOWPLAN_ALL (Transact-SQL)
或
SET SHOWPLAN_XML (Transact-SQL)
在SQL Server Management Studio查询窗口中,您可以运行SET SHOWPLAN_ALL ON
或SET SHOWPLAN_XML ON
,然后运行查询。此时它不会返回查询的结果集,而是返回实际的执行计划。然后,当您运行SET SHOWPLAN_ALL OFF
或SET SHOWPLAN_XML OFF
然后运行查询时,您将再次获得结果集。
答案 2 :(得分:1)
请注意,Microsoft在SQL 2012中为TSQL语法添加了EXPLAIN命令,但它仅适用于Azure SQL数据仓库和并行数据仓库 - 因此不适用于常规RDBMS产品。
它以XML格式提供执行计划,并有助于显示将在仓库节点中分布的计划部分。
来源: TSQL EXPLAIN
答案 3 :(得分:0)
在SSMS(我是18.3.1)中,突出显示有问题的查询,然后按 CTRL + L
(这就是Tobias提到的-Query->Display Estimated Query Plan
)
答案 4 :(得分:-3)
您需要查看SQl Server中的执行计划。在线查阅该书中的术语,了解如何使用它。
它们不是那么容易阅读,您可能想要进行一些研究,这是一个谷歌搜索术语,可以帮助您入门:
阅读执行计划sql server