【发布时间】:2023-03-15 12:30:02
【问题描述】:
我正在使用以下查询在 SQL Server 2008 上检查它,我得到的错误是
消息 102,级别 15,状态 1,第 13 行 '.' 附近的语法不正确。
查询:
SELECT total_worker_time/execution_count AS AvgCPU
, total_worker_time AS TotalCPU
, total_elapsed_time/execution_count AS AvgDuration
, total_elapsed_time AS TotalDuration
, (total_logical_reads+total_physical_reads)/execution_count AS AvgReads
, (total_logical_reads+total_physical_reads) AS TotalReads
, execution_count
, SUBSTRING
(
st.TEXT, (qs.statement_start_offset/2)+1,
(
(
CASE qs.statement_end_offset
WHEN -1 THEN datalength(st.TEXT)
ELSE qs.statement_end_offset
END - qs.statement_start_offset
)/2
) + 1
) AS txt
, query_plan
FROM sys.dm_exec_query_stats AS qs
cross apply sys.dm_exec_sql_text(qs.sql_handle) AS st
cross apply sys.dm_exec_query_plan (qs.plan_handle) AS qp
ORDER BY 1 DESC
第 13 行是
FROM sys.dm_exec_query_stats AS qs
不知道是什么问题
我的 SQL Server 版本是:
Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (X64)
Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7600)
【问题讨论】:
-
对我来说非常好......
-
在我的 SQL 2008 R2 Developer 安装上运行良好
-
你是如何运行这个查询的?是来自 SQL 工作室、来自 .NET 程序等吗?
-
确保所有对象都存在于对象资源管理器中。系统数据库 > 主 > 视图 > 系统视图...我不知道他们为什么不这样做,但你永远不知道。
-
@AaronBertrand 如果您的答案正确,那将是一个很好的选择。希望如此,因为我的建议确实很糟糕.. :)
标签: sql-server