gpt4 book ai didi

sql - 如何清除 SQL Server 2005/2008 中的查询执行统计信息

转载 作者:行者123 更新时间:2023-12-01 19:57:57 24 4
gpt4 key购买 nike

基于使用从这篇文章 Most Executed Stored Procedure - Stack Overflow 获得的这段非常有用的 SQL 来获取查询执行统计信息:

SELECT TOP 100
qt.TEXT AS 'SP Name',
SUBSTRING(qt.text, qs.statement_start_offset/2, CASE WHEN (qs.statement_end_offset = -1) THEN LEN(qt.text) ELSE (qs.statement_end_offset - qs.statement_start_offset)/2 END) AS actual_query,
qs.execution_count AS 'Execution Count',
qs.total_worker_time/qs.execution_count AS 'AvgWorkerTime',
qs.total_worker_time AS 'TotalWorkerTime',
qs.total_physical_reads AS 'PhysicalReads',
qs.creation_time 'CreationTime',
qs.execution_count/DATEDIFF(Second, qs.creation_time, GETDATE()) AS 'Calls/Second'
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS qt
WHERE qt.dbid = (SELECT dbid
FROM sys.sysdatabases
WHERE name = 'BSP')
ORDER BY qs.total_worker_time/qs.execution_count DESC

如何彻底清除这些执行统计信息并从头开始?

这将特别有用,因为开发错误和测试导致例程通常被调用大量次,从而使真实的使用级别无效。

最佳答案

DBCC FREEPROCCACHE
DBCC DROPCLEANBUFFERS

关于sql - 如何清除 SQL Server 2005/2008 中的查询执行统计信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2243591/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com