小编Pra*_*eti的帖子

查找最近在数据库上执行的所有查询

[我是初级 T-SQL 程序员]
[..希望我在正确的堆栈交换站点上]

我想获得我执行的所有查询的列表(至少,我从早上开始执行的那些查询)。我需要报告查询的执行时间。

在线搜索并没有给我带来太多有用的信息。我在网上找到的唯一一个看起来很接近的查询是

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
ORDER BY 
    deqs.last_execution_time DESC
Run Code Online (Sandbox Code Playgroud)

这个查询返回了一些奇怪的结果(其中大部分是一堆 sproc)。此外,所有这些结果都显示了从今天下午开始执行的查询(我需要从早上开始查询)。

我在之前的问题中找不到任何东西(如果已经问过类似的问题,请指点我)。

我看到了一些关于 SQL Profiler 的建议,但我想 Profiler 只有在我已经开始跟踪时才会帮助我(如果我错了,请纠正我)。

有人可以建议我如何获取从早上开始在数据库上执行的所有查询的列表(包括查询执行时间)。

[如果我也能以某种方式获得执行查询的用户的用户名,这将是有帮助的(不是必需的)]

sql-server ssms sql-server-2008-r2

22
推荐指数
1
解决办法
14万
查看次数

标签 统计

sql-server ×1

sql-server-2008-r2 ×1

ssms ×1