Select returns 无行 - 跟踪文件中的查询

Select returns no rows - queries in trace file

imported a trace文件使用

SELECT * INTO trace_table FROM ::fn_trace_gettable('c:\my_trace.trc', default)

虽然 我注意到某些 select 语句需要大量时间(持续时间)和 cpu 但最后没有 return 任何行( RowsCount == NULL).

SELECT TextData, ClientProcessID, EventClass
        , Duration, StartTime, EndTime
        , Reads, Writes, CPU, RowCounts
        , EventSequence,  TextData_md5_hash    
        , ApplicationName, SPID
FROM MyImportedTrace
WHERE 
      TextData_md5_hash in (0x4A943F266010BDD2A47179DC3481BC7F)
ORDER BY SPID, StartTime, EventSequence

例子

在查询中测试 window

如果我将相同的查询从 TextData-Field 复制到查询 window 中,我会得到很多行 (>200000)

问题

接受答案后更新/编辑

这个查询

Use MyDatabase
SELECT ti.EventClass, te.Eventname, Count(*) as CountAsterisk
    , Sum(ti.RowCounts) as RowCountsSum
    , Sum(ti.Duration/1000) as DurationSum_ms
    , Avg(ti.Duration/1000) as DurationAvg_ms
FROM TraceImport ti
    Left JOIN TraceEvents te  
         ON ti.EventClass = te.EventTraceID
Group By ti.EventClass, te.Eventname 
Order By EventClass

Returns这个结果

sys.fn_trace_gettable returns 可能已捕获的所有可能列。

不能保证您正在查看的实际跟踪确实捕获了每个相关事件 RowCounts class。

根据您目前提供的信息,没有理由认为跟踪不是这样设置的。

在 window Trace properties 中的 click on Tools / SQL Server Profiler that opens the 应用程序中单击选项卡 Event selection 并确保选中 RowCounts 列中的事件 class SQL:BatchCompleted