1. 程式人生 > >查詢SQLSERVER執行過的SQL記錄

查詢SQLSERVER執行過的SQL記錄

僅支援SQL SERVER2008及以上版本

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
–關鍵字
CROSS APPLY
sys.dm_exec_sql_text(QS.sql_handle) ST
WHERE
QS.creation_time BETWEEN ‘2018-05-08 09:00:00’ AND ‘2018-05-08 18:00:00’
–AND ST.text LIKE ‘%%’
ORDER BY
QS.creation_time DESC

SELECT TOP 1000
–建立時間
QS.creation_time,
–執行文字
ST.text
FROM
sys.dm_exec_query_stats QS
–關鍵字
CROSS APPLY
sys.dm_exec_sql_text(QS.sql_handle) ST
WHERE
QS.creation_time BETWEEN ‘2018-05-08 09:00:00’ AND ‘2018-05-08 18:00:00’
AND ST.text NOT LIKE ‘%SELECT * FROM T_LOCATIONINFO WHERE STRCLIPLOGICID in(%’
ORDER BY
QS.creation_time DESC

相關推薦

查詢SQLSERVER執行SQL記錄

僅支援SQL SERVER2008及以上版本 SELECT TOP 1000 –建立時間 QS.creation_time, –查詢語句 SUBSTRING(ST.text,(QS.statement_start_offset/2)+1, ((CASE QS.s

數據庫查詢歷史執行sql語句

ext ati ase stat code class esc 歷史 blog 平常的調試過程中可能想查詢以前執行過的語句。以下為sqlserver2008中查詢歷史執行語句。 SELECT TOP 1000 --創建時間 QS.creation_time, --查

SQLSERVER 執行的語句查詢

bst esc star work last tween ros fse sed SELECT TOP 30000 total_worker_time/1000 AS [總消耗CPU 時間(ms)], execution_count [運行

使用mysqlbinlog從二進位制日誌檔案中查詢mysql執行sql語句

前提MySQL開啟了binlog日誌操作1. 檢視MySQL是否開啟binlog(進mysql操作)  mysql> show variables like 'log_bin%';       2. 查詢binlog檔名 &nbs

plsql developer 查詢已經執行sql語句

登入plsql developer後,有時候會需要檢視自己執行過的sql語句,但是又關閉了sql的執行視窗,那怎麼才能找到執行過的sql 語句呢,plsql 為 我們準備了快捷方式才查詢:Ctrl +

oracle 查詢最近執行SQL語句

---正在執行的select a.username, a.sid,b.SQL_TEXT, b.SQL_FULLTEXT  from v$session a, v$sqlarea b where a.sql_address = b.address ---執行過的select b.SQL_TEXT,b.FIRS

MySQL 查看執行SQL記錄

日誌文件 pat 日誌 服務端 arp global 令行 -- 格式 我們時常會有查看MySQL服務端執行的SQL記錄。在MySQL5.1之後提供了支持,通過在啟動時加入-l 或者--log選項即可: mysqld -l mysqld --log 在後面的版本(5.1

查詢當前執行SQL,鎖表與解鎖

一:查詢當前正在執行的SQL:SELECT a.sid, a.serial#, a.machine, a.username, b.hash_value, c.sql_text  FROM v$session a, v$sqlarea b, v$sqltext c WHERE

mysql 查詢正在執行sql

class mat bsp RoCE 用戶 pan ssl 所有 sql 查詢 select * from information_schema.`PROCESSLIST` where info is not null; 或者 -- use infor

查詢Oracle正在執行執行SQL語句

session man ESS ext acl ads ont desc -s 1、正在執行的 select a.username, a.sid,b.SQL_TEXT, b.SQL_FULLTEXT from v$session a, v$sqlarea b where

mysql記錄所有執行SQL

前不久,遇見一些問題,要監控一下SQL的執行,看看是不是有哪些SQL是要去掉的之類的 於是我上網找啊找啊,給出來的結果都是一種,修改my.cnf檔案 我按著網上的說法去做,結果我直接崩潰了, 也不知道是不是我的環境是自己編譯安裝的還是其他什麼的,反正按照改了以後就是死活執行不起來 沒辦法,只好自己看看怎麼弄了

三種記錄 MySQL 所執行SQL 語句的方法

程式 Debug 有時後從前面第一行追起來很辛苦(程式碼太多或 compile 過), 另一種做法就是從後面追起來, 反正最後寫入的是 DB, 那就從 DB 開始往前推, 所以就是要抓程式是執行哪些 SQL 語法.(以下只以 MySQL 為主) 之前用過的追蹤法是用 t

Oracle--查詢正在執行執行SQL語句及語句執行效能

--查詢Oracle正在執行和執行過的SQL語句及語句執行效能  -- 1.正在執行的 select a.username, a.sid,b.SQL_TEXT, b.SQL_FULLTEXT   from v$session a, v$sqlarea b  where a.

pl sql 檢視歷史執行sql記錄

現在越來越多人用plsql 查詢和執行sql,因為該工具很方便,不僅可以執行sql、以及命令視窗,但是呢,有時候我們執行完sql,可能忘記儲存或者當時覺得可能不怎麼重要,就沒有儲存,等到了第二天或者過段時間,想看看之前執行的sql,這時候怎麼辦呢?首先開啟sql視窗,如圖所示

MySQL開啟記錄執行SQL語句方法

開啟方法很簡單:編輯/etc/my.cnf檔案,在[mysqld]節下面新增:log=/var/lib/mysql/sql_row.log行(日誌的路徑自己根據需要定義)。 [mysqld] datadir=/var/lib/mysql socket=/var/lib/

查詢SQL Server執行SQL語句(執行次數)

SELECT TOP 2000 ST.text AS '執行的SQL語句', QS.execution_count AS '執行次數', QS.total_elapsed_time AS '耗時', QS.total_

45、SQL邏輯查詢語句執行順序

mysq 一定的 gif 行數據 查詢語句 客戶 prim 記錄 測試表 一 SELECT語句關鍵字的定義順序 SELECT DISTINCT <select_list> FROM <left_table> <join_type> J

python 3 mysql sql邏輯查詢語句執行順序

shanghai 不能 結果 utf8 才會 right 完成 並且 分享 python 3 mysql sql邏輯查詢語句執行順序 一 、SELECT語句關鍵字的定義順序 SELECT DISTINCT <select_list> FROM <left

SqlServer中通過SQL語句實現樹狀查詢

clas all bold join where procedure ner log class 1 CREATE PROCEDURE [dbo].[GetTree] 2 @Id int 3 AS 4 BEGIN 5 with cte as

mysql五補充部分:SQL邏輯查詢語句執行順序

std data 根據 使用 cor 分析 執行過程 笛卡爾 不同的 閱讀目錄 一 SELECT語句關鍵字的定義順序 二 SELECT語句關鍵字的執行順序 三 準備表和數據 四 準備SQL邏輯查詢測試語句 五 執行順序分析 一 SELECT語句關鍵字的定義