查询sql执行速度
with QS as(
select cp.objtype as object_type
,db_name(st.dbid)as [database]
,object_schema_name(st.objectid,st.dbid)as [schema]
,object_name(st.objectid,st.dbid)as [object]
,convert(char(16),qs.creation_time,120)as plan_creation
,convert(char(16),qs.last_execution_time,120)as last_execution
,qs.plan_generation_num
,qs.execution_count
,qs.total_worker_time
,qs.total_physical_reads
,qs.total_logical_writes
,qs.total_logical_reads
,qs.total_elapsed_time/(1000000*qs.execution_count)as avg_elapesd_seconds
,qs.total_worker_time/qs.execution_count as avg_cpu_cost
,qs.total_logical_reads/qs.execution_count as avg_logical_reads
,qs.total_logical_writes/qs.execution_count as avg_logical_writes
,qs.total_physical_reads/qs.execution_count as avg_physical_reads
,st.text
,qp.query_plan
from sys.dm_exec_query_stats qs
join sys.dm_exec_cached_plans cp on cp.plan_handle=qs.plan_handle
cross apply sys.dm_exec_sql_text(sql_handle)as st
cross apply sys.dm_exec_query_plan(qs.plan_handle)as qp
where 1=1
--and cp.objtype='Proc' --对象类型
--and db_name(st.dbid)='GprsRun' --数据库
--and st.text not like '%时间%' and st.text not like '%@queryStr%' --查询字符串
--and qs.execution_count>100 --执行次数
--and qs.total_worker_time>100 --cpu总时间
--and qs.total_physical_reads>100 --物理读次数
--and qs.total_logical_writes>100 --逻辑写次数
--and qs.total_logical_reads>100 --逻辑读次数
)
select *, '执行次数最多的' type from (select top 5 * from QS order by execution_count desc)a --执行次数最多的
union all
select *, '执行时间最长的' type from (select top 5 * from QS order by total_worker_time desc)a --执行时间最长的
union all
select *, '物理读次数最多的' type from (select top 5 * from QS order by total_physical_reads desc)a --物理读次数最多的
union all
select *, '逻辑写次数最多的' type from (select top 5 * from QS order by total_logical_writes desc)a --逻辑写次数最多的
union all
select *, '逻辑读次数最多的' type from (select top 5 * from QS order by total_logical_reads desc)a --逻辑读次数最多的
union all
select *, '平均cpu时间最长的' type from (select top 5 * from QS order by avg_cpu_cost desc)a --平均cpu时间最长的
union all
select *, '平均逻辑读最多的' type from (select top 5 * from QS order by avg_logical_reads desc)a --平均逻辑读最多的
union all
select *, '平均逻辑写最多的' type from (select top 5 * from QS order by avg_logical_writes desc)a --平均逻辑写最多的
union all
select *, '平均物理写最多的' type from (select top 5 * from QS order by avg_physical_reads desc)a --平均物理写最多的
order by text
查询sql执行速度的更多相关文章
- 查询SQL执行情况
/* 查询SQL执行情况 包含逻辑读取信息,执行信息等情况*/ SELECT creation_time N'语句编译时间' ,last_execution_time N'上次执行时间' ,total ...
- Mysql资料 查询SQL执行顺序
目录 一.Mysql数据库查询Sql的执行顺序是什么? 二.具体顺序 一.Mysql数据库查询Sql的执行顺序是什么? (9)SELECT (10) DISTINCT column, (6)AGG_F ...
- sql运算符优先级及逻辑处理顺序--查询sql执行顺序
sql逻辑处理顺序 --开启和关闭查询 --SET STATISTICS TIME ON---------------------------------------------请先来看看SET ST ...
- Hibernate 模糊查询 ' %?% ' SQL执行异常
今天我在使用Hibernate 的SQL预编译之后注入参数的形式写了一条模糊查询语句.刚开始我是这么写的
- showplan_text查询计划查询 sql执行顺序 时间 IO
http://www.cnblogs.com/happyday56/archive/2009/09/10/1564144.html set showplan_text ongoselect exp ...
- pgsql SQL监控,查询SQL执行情况
SELECT procpid, START, now() - START AS lap, current_query FROM ( SELECT backendid, pg_stat_get_back ...
- 一条查询sql的执行流程和底层原理
1.一条查询SQL执行流程图 2.查询SQL执行流程之发送SQL请求 (1)客户端按照Mysql通信协议将SQL发送到服务端,SQL到达服务端后,服务端会单起一个线程执行SQL. (2)执行时Mysq ...
- 面试官:说说一条查询sql的执行流程和底层原理?
一条查询SQL执行流程图如下 序章 自我介绍 我是一条sql,就是一条长长的字符串,不要问我长什么样,因为我比较傲娇. 额~~不是我不说啊,因为细说起来,我可以细分为DML(Update.Insert ...
- 【知识点整理】Oracle中NOLOGGING、APPEND、ARCHIVE和PARALLEL下,REDO、UNDO和执行速度的比较
[知识点整理]Oracle中NOLOGGING.APPEND.ARCHIVE和PARALLEL下,REDO.UNDO和执行速度的比较 1 BLOG文档结构图 2 前言部分 2.1 导读和注意事项 ...
随机推荐
- VS2010编译和运行项目错误
打开工程提示如下: The 'Microsoft.Data.Entity.Design.BootstrapPackage.BootstrapPackage, Microsoft.Data.Entity ...
- zedgraph控件的一些比较有用的属性 转
(1)zedgraph控件属性具体解释: AxisChange()() ->> This performs an axis change command on the graphPane. ...
- POJ1050最大子矩阵面积
题目:http://poj.org/problem?id=1050 自己用了n^4的像暴搜一样的方法,感到有点奇怪——真的是这样? #include<iostream> #include& ...
- MySQL的Join使用
在MySQL(以5.1为例)中,表连接的语法可以参见MySQL官方手册:MySQL官方手册-JOIN 在查询中,连接的语法类似 SELECT select_expr FROM table_refere ...
- 一、Python 模块EasyGui详细介绍
Python 模块EasyGui详细介绍 EasyGui 官网: -http://easygui.sourceforge.net 官方的教学文档: -easygui-docs-0.96\tutoria ...
- bzoj1034 泡泡堂
Description 第XXXX届NOI期间,为了加强各省选手之间的交流,组委会决定组织一场省际电子竞技大赛,每一个省的代表队由n名选手组成,比赛的项目是老少咸宜的网络游戏泡泡堂.每一场比赛前,对阵 ...
- poj 3069 Saruman's Army(贪心)
Saruman's Army Time Limit : 2000/1000ms (Java/Other) Memory Limit : 131072/65536K (Java/Other) Tot ...
- ASP.NET Web Pages:对象
ylbtech-.Net-ASP.NET Web Pages:对象 1.返回顶部 1. ASP.NET Web Pages - 对象 Web Pages 经常是跟对象有关的. Page 对象 您已经看 ...
- 使用xmlHttprequest有感
原文地址:http://my.oschina.net/LinBandit/blog/33160 之前一片日志说使用xmlhttprequest获取服务数据时,在IE下能通过而在chrome不能通过的问 ...
- PHP mysqli_fetch_object() 函数实例讲解
定义和用法 mysqli_fetch_object() 函数从结果集中取得当前行,并作为对象返回. 注释:该函数返回的字段名是区分大小写的. 语法 mysqli_fetch_object(result ...