sql server 根据执行计划查询耗时操作
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_elapsed_time/(1000*qs.execution_count) as avg_elapesd_seconds, /*总花费时间ms*/
qs.total_worker_time/(1000*qs.execution_count) as avg_cpu_cost, /*平均cpu耗时ms*/
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
)select top 20 * from QS
where text like '%%'
--and object_type='Proc'
--and avg_logical_reads>200
and execution_count>100 /*执行次数*/
--and last_execution_time>dateadd(mi,-10,getdate())
and last_execution >= '2016-05-01 00:00:00.000' /*最后执行时间*/
order by avg_logical_reads desc
sql server 根据执行计划查询耗时操作的更多相关文章
- SQL Server 优化-执行计划
对于SQL Server的优化来说,优化查询可能是很常见的事情.由于数据库的优化,本身也是一个涉及面比较的广的话题, 因此本文只谈优化查询时如何看懂SQL Server查询计划.毕竟我对SQL Ser ...
- 第1/24周 SQL Server 如何执行一个查询
大家好,欢迎来到第1周的SQL Server性能调优培训.在我们进入SQL Server性能调优里枯燥难懂的细节内容之前,我想通过讲解SQL Server如何执行一个查询来建立基础.这个部分非常重要, ...
- 了解Sql Server的执行计划
前一篇总结了Sql Server Profiler,它主要用来监控数据库,并跟踪生成的sql语句.但是只拿到生成的sql语句没有什么用,我们可以利用这些sql语句,然后结合执行计划来分析sql语句的性 ...
- 第1周 SQL Server 如何执行一个查询
原文:第1周 SQL Server 如何执行一个查询 大家好,欢迎来到第1周的SQL Server性能调优培训.在我们进入SQL Server性能调优里枯燥难懂的细节内容之前,我想通过讲解SQL Se ...
- SQL Server实际执行计划COST"欺骗"案例
有个系统,昨天Support人员发布了相关升级脚本后,今天发现系统中有个功能不能正常使用了,直接报超时了(Timeout expired)的错误.定位到相关相关存储过程后,然后在优化分析的过程中,又遇 ...
- 程序员眼中的 SQL Server-执行计划教会我如何创建索引?
先说点废话 以前有 DBA 在身边的时候,从来不曾考虑过数据库性能的问题,但是,当一个应用程序从头到脚都由自己完成,而且数据库面对的是接近百万的数据,看着一个页面加载速度像乌龟一样,自己心里真是有种挫 ...
- SQL Server-执行计划教会我如何创建索引
先说点废话 以前有 DBA 在身边的时候,从来不曾考虑过数据库性能的问题,但是,当一个应用程序从头到脚都由自己完成,而且数据库面对的是接近百万的数据,看着一个页面加载速度像乌龟一样,自己心里真是有种挫 ...
- Sql Server中执行计划的缓存机制
Sql查询过程 当执行一个Sql语句或者存储过程时, Sql Server的大致过程是 1. 对查询语句进行分析,将其生成逻辑单元,并进行基本的语法检查 2. 生成查询树(会将查询语句中所有操作转换为 ...
- SQL SERVER 2012 执行计划走嵌套循环导致性能问题的案例
开发人员遇到一个及其诡异的的SQL性能问题,这段完整SQL语句如下所示: declare @UserId INT declare @PSANo VAR ...
随机推荐
- form表单元素类型
<form> <input type="text"> <input type="password"> <input t ...
- Maven中Spring-Data-Redis存储对象(redisTemplate)
Redis是一种nosql数据库,在开发中常用做缓存.Jedis是Redis在java中的redis- client.在此之前,希望已经了解redis的基本使用和Maven的使用.建立Maven Pr ...
- 微信支付(0923更新)商户支付密钥key的生成与设置
微信支付(0923更新)商户支付密钥key的生成与设置 说明:新版微信支付,用户必须授权登录才能支付.需要商家自己设置商户号支付密钥. 设置商户号支付密钥方法如下: 1. 申请通过审核后,打开微信发来 ...
- Spring 注解总结
声明:这是转载的.内容根据网上资料整理.相关链接:http://www.360doc.com/content/10/1118/16/2371584_70449913.shtmlhttp://www.i ...
- 【故障处理】ORA-12162: TNS:net service name is incorrectly specified
本文将给大家阐述一个因未设置系统环境变量ORACLE_SID导致ORA-12162错误的案例.希望大家有所思考. 1.获得有关ORA-12162报错信息的通用表述信息[oracle@asdlabdb0 ...
- [java]序列化框架性能对比(kryo、hessian、java、protostuff)
序列化框架性能对比(kryo.hessian.java.protostuff) 简介: 优点 缺点 Kryo 速度快,序列化后体积小 跨语言支持较复杂 Hessian 默认支持跨语言 较慢 Pro ...
- openstack(liberty):部署实验平台(三,简单版本软件安装 之cinder,swift)
今天这里追加存储相关的部署,主要是Block和Object,为了看到效果,简单的部署在单节点上,即Block一个节点,Object对应一个节点. 读者可能会觉得我这个图和之前的两个post有点点不同, ...
- line-height让文本在块级元素中居中显示总结
一.总结: line-height不仅可以用在段落文本中控制行与行之间的间距,还可以用来控制文本在li这种块级元素中的位置. 文本行间距的大小由字体的大小决定,行间距的大小的设置方法有5种方式:
- mvc checked=\"checked\"
<input id="IsDiscount" type="checkbox" @(Model != null && Model.IsDis ...
- 通过profile 用maven命令打不同配置的变量包
profiles定义如下 <profiles> <profile> <id>local</id> ...