sqlserver查询执行时间过长的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 语句块,
ST.text as 语句,
QS.total_worker_time as 总执行时间毫秒,
QS.last_worker_time as 上次执行时间毫秒,
QS.max_worker_time as 最大执行时间毫秒,
QS.min_worker_time as 最小执行时间毫秒
FROM sys.dm_exec_query_stats QS
CROSS APPLY sys.dm_exec_sql_text(QS.sql_handle) ST
WHERE QS.creation_time BETWEEN convert(varchar(10),getdate(),23) AND convert(varchar(10),getdate()+1,23)
ORDER BY QS.total_worker_time DESC

资源来源:@马小龙

原文地址:https://www.cnblogs.com/chenxizhaolu/p/9928209.html

时间: 2024-10-26 00:13:52

sqlserver查询执行时间过长的sql的相关文章

db2 优化基础 查询执行时间最长的SQL

之前写过一个查询执行查看运行时间最长的应用,查询到的是,应用程序,例如我的程序,查到的是IIS,没什么用. select elapsed_time_min,appl_status,agent_id from sysibmadm.long_running_sql order by elapsed_time_min desc fetch first 5 rows only 查询执行时间最长的SQL,要使用快照. 首先执行下列语句,打开先关的开关: db2 UPDATE MONITOR SWITCHE

db2 优化基础 查询运行时间最长的SQL

之前写过一个查询运行查看运行时间最长的应用.查询到的是,应用程序.比如我的程序.查到的是IIS,没什么用. select elapsed_time_min,appl_status,agent_id from sysibmadm.long_running_sql order by elapsed_time_min desc fetch first 5 rows only 查询运行时间最长的SQL,要使用快照. 首先运行下列语句,打开先关的开关: db2 UPDATE MONITOR SWITCHE

看懂SqlServer查询计划(转发)

看懂SqlServer查询计划 阅读目录 开始 SQL Server 查找记录的方法 SQL Server Join 方式 更具体执行过程 索引统计信息:查询计划的选择依据 优化视图查询 推荐阅读-MSDN文章 对于SQL Server的优化来说,优化查询可能是很常见的事情.由于数据库的优化,本身也是一个涉及面比较的广的话题,因此本文只谈优化查询时如何看懂SQL Server查询计划.毕竟我对SQL Server的认识有限,如有错误,也恳请您在发现后及时批评指正. 首先,打开[SQL Serve

解决因为链表过长,sql查询慢的问题

/** * 解决因为链表过长,sql查询慢的问题 * 使用分治算法,先切分链表,然后查询结果,最后合并结果 *  * @author lingpy * @since 1.0 */public class DivideAndConquerUtil {    /**     *      * @param dataList 元数据     * @param exceuter 执行类     * @return     * @throws Exception     */    public stat

sqlserver查询所有表的行数的sql语句

原文:sqlserver查询所有表的行数的sql语句 select a.name, b.rows  from sysobjects a inner join sysindexes b on a.id = b.id where a.type = 'u'   and b.indid in (0, 1)order by a.name

MySQL中如何查看“慢查询”,如何分析执行SQL的效率?

一.MySQL数据库有几个配置选项可以帮助我们及时捕获低效SQL语句 1,slow_query_log这个参数设置为ON,可以捕获执行时间超过一定数值的SQL语句. 2,long_query_time当SQL语句执行时间超过此数值时,就会被记录到日志中,建议设置为1或者更短. 3,slow_query_log_file记录日志的文件名. 4,log_queries_not_using_indexes这个参数设置为ON,可以捕获到所有未使用索引的SQL语句,尽管这个SQL语句有可能执行得挺快. 二

《万能数据库查询分析器》实现使用SQL语句直接高效地访问文本文件

<万能数据库查询分析器>实现使用SQL语句直接高效地访问文本文件 马根峰 (广东联合电子服务股份有限公司, 广州 510300) 摘要    用SQL语句来直接访问文本文件?是在做梦吗? 本文详细地介绍了"万能数据库查询分析器",中文版本<DB 查询分析器>.英文版本<DB Query Analyzer>在 文本文件处理方面非常强大的功能,你可以直接用SQL语句来访问这些文本文件,访问250万条记录的文件的复杂的关联操作,也不过用时59秒钟.需要注意

T-SQL动态查询(3)——静态SQL

接上文:T-SQL动态查询(2)--关键字查询   本文讲述关于静态SQL的一些知识和基础技巧. 简介: 什么是静态SQL?静态SQL是和动态SQL相对而言的,其实我们没必要过于纠结精确定义,只要大概知道什么算静态SQL即可.当一个语句特别是存储过程,语句不需要动态生成或拼接,除了参数之外我们都知道语句的最终形态时,就可以认为这是静态SQL,简单来说,我们大部分的处理动态查询条件的语句都属于静态SQL. 为什么使用静态SQL: 本文不是介绍静态SQL的入门文章,介绍静态SQL最主要是介绍其中的O

sqlserver查询数据的所有表名和行数

原文:sqlserver查询数据的所有表名和行数 //查询所有表明select name from sysobjects where xtype='u' select * from sys.tables //查询数据库中所有的表名及行数 SELECT a.name AS [TABLE NAME] , b.rows AS [RECORD COUNT] FROM sysobjects AS a INNER JOIN sysindexes AS b ON a.id = b.id WHERE ( a.t