我正在尝试运行一个简单的查询来查找平均 CPU 时间最高的查询。该代码实际上是从这里复制粘贴的:
SELECT TOP 5 total_worker_time/execution_count AS [Avg CPU Time],
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 statement_text
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS st
ORDER BY total_worker_time/execution_count DESC;
问题是,SQL Server 在第 8 行的参数 to 处抱怨语法错误sys.dm_exec_sql_text
:qs.sql_handle
这无济于事
Incorrect syntax near '.'.
对于我的一生,我无法弄清楚查询有什么问题。有任何想法吗?