2015-09-04 58 views
1

我知道如何确定存储过程的最后执行时间,但是有没有类似的方法可用来确定用户定义的函数的执行时间?TSQL查询来查找UDF的最后执行时间

+0

可能不是 - UDF是不执行他们自己,他们的代码中,除非你把一些无论查询调用它们 –

+1

没有扩大在你的函数中记录代码。 –

+2

@SeanLange - UDF不能有副作用 - 没有更新/插入-'cept在函数变量 – Clay

回答

1

如果细节仍在缓存...

SELECT qs.last_execution_time 
FROM sys.dm_exec_query_stats qs 
     CROSS APPLY (SELECT 1 AS X 
        FROM sys.dm_exec_plan_attributes(qs.plan_handle) 
        WHERE (attribute = 'objectid' 
          AND value = OBJECT_ID('[YourDBName].[dbo].[YourFunctionName]')) 
          OR (attribute = 'dbid' 
           AND value = DB_ID('YourDBName')) 
        HAVING COUNT(*) = 2) CA 

enter image description here