sp_opt_querystats "<query_text>" | help [, "<diagnostic_options>" | null
[, <database_name>] [, <user_name>]]
"<query_text>"
正在分析的查询的文本,用引号引起来。
help
显示 sp_opt_querystats 的语法和用法信息。
<diagnostic_options>
(可选)基于 set 选项的诊断参数。诊断参数和 set 选项为:
set statistics io on
set statistics time on
set showplan on
set option show_missing_stats long
set statistics resource on
show switches
set option show long
option_show_long 和 option_show 是互斥的。
set option show on
set nodata on
如果包括 set nodata on,则不会执行 showdata。
set statistics plancost on
仅当指定 exec 或 allexec 选项时才可用。
set noexec on
如果包括 set noexec on,则不会执行 exec。
set plan optgoal allrows_mix
allrows_mix、allrows_oltp 和 allrows_dss 是互斥的。
set plan optgoal allrows_oltp
set plan optgoal allrows_dss
返回增强的进度信息。
启用前七个选项。
all 和 allexec 无法与其它参数结合使用,而且是互斥的。
启用前七个选项。
allexec 选项包括 all 选项。
null
sp_opt_querystats 需要用三个参数来指定数据库的名称。如果不需要诊断选项,请为该参数输入 null 值以指定 <database_name> 参数的值。
<database_name>
(可选)用于执行查询的数据库的名称。如果正在分析的查询没有完全限定的表,则使用此参数。
<user_name>
(可选)在 <database_name> 参数指定的数据库中执行查询的用户的名称。该用户必须已经存在于数据库中,而且执行 sp_opt_querystats 的登录名必须具有在该数据库中执行 setuser 命令的权限。
分析 pubs2 数据库的 select 命令:
sp_opt_querystats 'select * from pubs2.dbo.authors'
分析 pubs2 数据库的 select 命令,其中包括基于以下 set 命令的信息:set showplan、set statistics io、set option show、set statistics plancost on:
sp_opt_querystats 'select * from pubs2.dbo.authors',
'showplan,statio,option_show, plancost'
使用 sp_opt_querystats 时,还存在一些其它注意事项:
sp_opt_querystats 'select "col" from "MYTABLE"', 'all','DB'