问:如何编写查询来显示未使用的存储过程?

Q: How to write a query to display unused stored procedures?

如何编写查询来显示未使用的存储过程?

您可以使用以下查询来查找过去一年内未更改的所有程序。

select ROUTINE_NAME,LAST_ALTERED 
from INFORMATION_SCHEMA.ROUTINES
where LAST_ALTERED < DATEADD(YY,-1,GETDATE())

您可以使用以下查询来查找过去一年内未执行的所有程序。

SELECT o.name, 
ps.last_execution_time,DB_NAME(ps.database_id)
FROM   sys.dm_exec_procedure_stats ps 
INNER JOIN sys.objects o 
ON ps.object_id = o.object_id 
WHERE  DB_NAME(ps.database_id) = 'DATABASENAME' 
and  cast(ps.last_execution_time as DATE)< DATEADD(YY,-1,GETDATE())