以文本方式查看主题

-  昂捷论坛  (http://www.enjoyit.com.cn/bbs/index.asp)
--  □-自由问答区  (http://www.enjoyit.com.cn/bbs/list.asp?boardid=35)
----  如果查询到系统中最慢的报表?  (http://www.enjoyit.com.cn/bbs/dispbbs.asp?boardid=35&id=8781)

--  作者:ssp
--  发布时间:2013/5/20 11:07:01
--  如果查询到系统中最慢的报表?

报表服务器中有强大的日志的功能,日志中记录了查询过的报表的一些信息(包含记录数、运行时间、报表的参数等),通过开始日期和结束日期的运算,可以知道哪个报表最慢,查询如下:

 

SELECT top 100 max(DATEDIFF(second,TimeStart,Timeend)) ,q.c_NAME
FROM ReportServer..Catalog c,ReportServer..ExecutionLog e,shq_srv.enjoy_shq.dbo.tbc_rpt_format q
WHERE TimeStart>\'2013-5-17\' and itemid=e.reportid AND q.c_guid=name
group by q.c_NAME order by max(DATEDIFF(second,TimeStart,Timeend)) desc

取到最慢报表的top100