If you need to check parameter values, this add-on returns an XML <ParameterList>
SELECT TOP 50 * FROM(SELECT COALESCE(OBJECT_NAME(s2.objectid),'Ad-Hoc') AS ProcName, execution_count,s2.objectid, (SELECT TOP 1 SUBSTRING(s2.TEXT,statement_start_offset / 2+1 , ( (CASE WHEN statement_end_offset = -1 THEN (LEN(CONVERT(NVARCHAR(MAX),s2.TEXT)) * 2) ELSE statement_end_offset END)- statement_start_offset) / 2+1)) AS sql_statement, SUBSTRING( s3.query_plan,CHARINDEX('<ParameterList>',s3.query_plan), CHARINDEX('</ParameterList>',s3.query_plan) + LEN('</ParameterList>') - CHARINDEX('<ParameterList>',s3.query_plan) ) AS Parameters, last_execution_time FROM sys.dm_exec_query_stats AS s1 CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS s2 CROSS APPLY sys.dm_exec_text_query_plan(s1.plan_handle, s1.statement_start_offset, s1.statement_end_offset) AS s3 ) x WHERE sql_statement NOT like 'SELECT TOP 50 * FROM(SELECT %' ORDER BY last_execution_time DESC
Preconfirmed Version
David Vaughan Sep 25 '19 at 21:11 2019-09-25 21:11
source share