惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
量子位
腾讯CDC
A
About on SuperTechFans
小众软件
小众软件
Microsoft Azure Blog
Microsoft Azure Blog
T
Tailwind CSS Blog
V
V2EX
B
Blog RSS Feed
H
Hackread – Cybersecurity News, Data Breaches, AI and More
GbyAI
GbyAI
Recent Announcements
Recent Announcements
Microsoft Security Blog
Microsoft Security Blog
博客园 - 叶小钗
罗磊的独立博客
宝玉的分享
宝玉的分享
WordPress大学
WordPress大学
大猫的无限游戏
大猫的无限游戏
IT之家
IT之家
V
Visual Studio Blog
D
DataBreaches.Net
博客园 - 三生石上(FineUI控件)
月光博客
月光博客
有赞技术团队
有赞技术团队

博客园 - 魔幻天空

TFS2012常见问题及解答 UI线程同步 作业调度框架 Quartz.NET 2.0 StepByStep(2) 作业调度框架 Quartz.NET 2.0 StepByStep 单机安装“完整”SharePoint 2010 WinDbg / SOS Cheat Sheet LightSwitch™初体验 .关于 WCF Binding 中 OpenTimeout, CloseTimeout, SendTimeout, ReceiveTimeout 的解释(转载) 轻松掌握用SQL来合并查询 WF4.0 RC 官方示例 Silverlight 3和Expression 3将于7月10日发布 【原】Winfrom的自动更新模块 【转蝈蝈俊.net 】SQL Server 2005 配置发送邮件 [转自MSDN]根据FxCop整理的.NET代码编写规范 谁在TDD 【转】IIS HTTP500错误以及COM+应用程序8004e00f错误的解决方法 每日见闻(一) 【转】30个优秀.net在线学习资源站点 开源许可证简单总结
《Dissecting SQL Server Execution Plans》随记
魔幻天空 · 2010-09-06 · via 博客园 - 魔幻天空

1.常用分析语句
DBCC FREEPROCCACHE --清缓存
DBCC DROPCLEANBUFFERS --清缓冲区

--获取性能信息
set statistics profile on

set statistics io on

set statistics time on

使用 SET STATISTICS XML ON 选项打开 XML 显示计划功能

--查看已经缓存的sql
SELECT  [cp].[refcounts]
       ,[cp].[usecounts]
       ,[cp].[objtype]
       ,[st].[dbid]
       ,[st].[objectid]
       ,[st].[text]
       ,[qp].[query_plan]
FROM    sys.dm_exec_cached_plans cp
        CROSS APPLY sys.dm_exec_sql_text(cp.plan_handle) st
        CROSS APPLY sys.dm_exec_query_plan(cp.plan_handle) qp ;


2.何时实际与执行计划不同?
    1.统计过期
    2. 需要并发


3.聚合索引包含全部的列数据,因此即使返回全部列也不会有【嵌套循环】和【键查找】

排序:SQLSERVER会首先利用内存进行排序,若内存不足,则会启用TEMPDB进行排序,此时将报告一个警告,如果出现警告,请改善内存大小或程序本身。

4.CTE 公用表表达式 可作为递归

5.实体化视图/索引视图(视图存储数据,tempdb,插入时自动更新)
    1. 创建索引视图的时候需要指定表所属的架构
    2.在创建索引视图的select语句时,不使用*,必须指定具体的列名
    3.在创建索引视图的select 语句中,不能存在重复的列名,这个不举例了
    4. 只能为索引视图创建唯一聚集索引