[SQL]查询某一个字段在某一段时期数据库中使用到的记录

时间:2023-03-08 16:05:49

有些时候我们常常须要哪里用到了一些表,又或者什么时候运行了某一个存储过程。整理出了在某段时期内数据库运行的sql查询。也能够查询到数据库中某些字段的存放处。非常好非常强大。希望能帮到大家~

SELECT TOP 1000
--创建时间
QS.creation_time,
--查询语句
SUBSTRING(ST.text,(QS.statement_start_offset/2)+1,
((CASE QS.statement_end_offset WHEN -1 THEN DATALENGTH(st.text)
ELSE QS.statement_end_offset END - QS.statement_start_offset)/2) + 1
) AS statement_text,
--运行文本
ST.text,
--运行计划
QS.total_worker_time,
QS.last_worker_time,
QS.max_worker_time,
QS.min_worker_time
FROM
sys.dm_exec_query_stats QS
--keyword
CROSS APPLY
sys.dm_exec_sql_text(QS.sql_handle) ST
WHERE
QS.creation_time BETWEEN '2013-12-0309:00:00' AND '2014-12-03 11:00:00'
AND ST.text LIKE '%BK_TSESTATU%'
ORDER BY
QS.creation_time

当中以下一段代码中BK_TSESTATU就是你要模糊搜索的字段

ST.text LIKE '%BK_TSESTATU%'