2012-04-24 72 views
1

這個查詢給我的SQL服務器上執行命令的歷史記錄:歷史SQL Server上的命令

Select * 
From 
(
SELECT  deqs.last_execution_time AS [Time], 
      dest.TEXT AS [Query] 
FROM  sys.dm_exec_query_stats AS deqs 
CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest 
) x 

當我加入Where x.Query LIKE '%Insert%'我很糟糕的結果(我認爲這是因爲交叉連接的):

Select * 
From 
(
    SELECT  deqs.last_execution_time AS [Time], 
       dest.TEXT AS [Query] 
    FROM  sys.dm_exec_query_stats AS deqs 
    CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest 
) x 
Where x.Query LIKE '%Insert%' 

如何讓交叉連接在SQL Server 2008 R2上正常工作?

回答

2

我不知道用你的意思:「壞的結果」,但這個工作對我來說:

SELECT deqs.last_execution_time AS [Time], dest.TEXT AS [Query] 
FROM sys.dm_exec_query_stats AS deqs 
CROSS APPLY sys.dm_exec_sql_text(sql_handle) AS dest 
WHERE dest.TEXT LIKE '%Insert%'