统计的基本操作语法 <第五篇>
1、创建统计语法:

CREATE STATISTICS statistics_name
ON { table_or_indexed_view_name } ( column [ ,...n ] )
[ WHERE <filter_predicate> ]
[ WITH
[ [ FULLSCAN
| SAMPLE number { PERCENT | ROWS }
| STATS_STREAM = stats_stream ] [ , ] ]
[ NORECOMPUTE ]
] ; <filter_predicate> ::=
<conjunct> [AND <conjunct>] <conjunct> ::=
<disjunct> | <comparison> <disjunct> ::=
column_name IN (constant ,…) <comparison> ::=
column_name <comparison_op> constant <comparison_op> ::=
IS | IS NOT | = | <> | != | > | >= | !> | < | <= | !<

以上有3个词比较陌生,看看:
- FULLSCAN:通过全扫描表或索引视图中的所有行来计算统计信息。 FULLSCAN 和 SAMPLE 100 PERCENT 的结果相同。 FULLSCAN 不能与 SAMPLE 选项一起使用。
- SAMPLE number { PERCENT | ROWS }:指定在查询优化器创建统计信息时所使用的表或索引视图中的近似行百分比或行数。在大多数情况下,不必指定 SAMPLE,这是因为在默认情况下,查询优化器已根据需要采用抽样,并以统计方式确定大量样本的大小,以便创建高质量的查询计划。 如果未指定 SAMPLE 和 FULLSCAN,查询优化器则默认使用抽样数据并计算样本大小。建议不指定 0 PERCENT 或 0 ROWS。 如果指定 0 PERCENT 或 0 ROWS,则将创建统计信息对象,但该对象不包含任何统计信息数据。
- NORECOMPUTE:为 statistics_name 禁用自动统计信息更新选项 AUTO_STATISTICS_UPDATE。 如果指定此选项,则查询优化器将完成 statistics_name 的任何正在进行中的统计信息更新并禁用将来的更新。
示例:
CREATE STATISTICS ST_NAME
ON Person(Name) --在Person表的Name列上创建统计
查看结果:

CREATE STATISTICS ST_NAME
ON PersonTenThousand (Name)
WHERE Name IS NOT NULL --过滤统计
WITH FULLSCAN; --全扫描
2、更新统计语法
UPDATE STATISTICS ON < table_name > [ . <index_name> ]
WITH FULLSCAN {, NORECOMPUTE }
说明:
- table_name:指定要更新其统计信息的表的名称。
- index_name:要更新其统计信息的索引。 如果未指定索引,则将更新指定的表或索引视图中所有的分发统计信息。 这包括使用 CREATE STATISTICS 语句创建的统计信息、自动创建的统计信息以及索引创建期间创建的统计信息。
- FULLSCAN:扫描表的全部行统计。
- NORECOMPUTE:进制统计自动更新。
示例:
UPDATE STATISTICS Person --默认抽样更新该表上的全部统计信息UPDATE STATISTICS Person IX_NAME --全扫描更新该表上的统计IX_NAME信息
WITH FULLSCAN;
3、删除统计语法
DROP STATISTICS table.statistics_name | view.statistics_name [ ,...n ]
示例:
DROP STATISTICS PersonTenThousand.ST_NAME --删除Person表上的统计ST_NAME
4、查看统计的操作:
查看Person表的IX_NAME统计:
DBCC SHOW_STATISTICS(Person,IX_NAME)
输出如下:

关于这些列的说明http://technet.microsoft.com/zh-cn/library/ms174384(v=sql.100).aspx
5、配置数据库的统计的自动创建
ALTER DATABASE Test SET AUTO_CREATE_STATISTICS OFF/ON
6、配置数据库统计的自动更新
ALTER DATABASE Test SET AUTO_UPDATE_STATISTICS OFF/ON
7、异步更新的配置
ALTER DATABASE Test SET AUTO_UPDATE_STATISTICS_ASYNC OFF/ON
8、存储过程配置统计自动更新开启
EXEC sp_autostats 'ta1','ON' --表ta1所有的统计开启自动更新
9、存储过程配置统计,精确到单个统计对象
EXEC sp_autostats 'ta1','OFF',IX_COLUMN2 --表ta1上的索引IX_COLUMN2开启自动更新
统计的基本操作语法 <第五篇>的更多相关文章
- 用仿ActionScript的语法来编写html5——第五篇,Graphics绘图
用仿ActionScript的语法来编写html5——第五篇,Graphics绘图 canvas本身就是一个Graphics,可以直接进行绘图在actionscript里面,每个Sprite都有一个G ...
- 【Python五篇慢慢弹】数据结构看python
数据结构看python 作者:白宁超 2016年10月9日14:04:47 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给出的pythondoc ...
- 【Python五篇慢慢弹(4)】模块异常谈python
模块异常谈python 作者:白宁超 2016年10月10日12:08:31 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给出的pythondo ...
- 【Python五篇慢慢弹】快速上手学python
快速上手学python 作者:白宁超 2016年10月4日19:59:39 摘要:python语言俨然不算新技术,七八年前甚至更早已有很多人研习,只是没有现在流行罢了.之所以当下如此盛行,我想肯定是多 ...
- 【Python五篇慢慢弹(3)】函数修行知python
函数修行知python 作者:白宁超 2016年10月9日21:51:52 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给出的pythondoc ...
- 【Python五篇慢慢弹(5)】类的继承案例解析,python相关知识延伸
类的继承案例解析,python相关知识延伸 作者:白宁超 2016年10月10日22:36:57 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给 ...
- Python之路【第十五篇】:Web框架
Python之路[第十五篇]:Web框架 Web框架本质 众所周知,对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. 1 2 3 4 5 6 ...
- 第五篇 Replication:事务复制-How it works
本篇文章是SQL Server Replication系列的第五篇,详细内容请参考原文. 这一系列包含SQL Server事务复制和合并复制的详细内容,从理解基本术语和设置复制的方法,到描述它是如何工 ...
- Python之路【第五篇】:面向对象和相关
Python之路[第五篇]:面向对象及相关 面向对象基础 基础内容介绍详见一下两篇博文: 面向对象初级篇 面向对象进阶篇 其他相关 一.isinstance(obj, cls) 检查是否obj是否 ...
随机推荐
- KEIL中的一些细节
1.KEIL中的指针: 基于存储器的指针:数据类型 [指向存储区] *[ 指针存储区]指针变量 char xdata * px //px本身存在于自动分配的空间,一般位于data中,指向的内容位于x ...
- FastMM内存泄露
转自:http://www.2ccc.com/article.asp?articleid=4879FastMM是非常优秀的内存管理器,但是从FastMM4Options.inc中找到合适自已程序的选项 ...
- mysql if对数据进行处理 having对数据进行查询 thinkphp中的exp支持更复杂的where查询
很多时候,数据库获取的信息并不是我们最终想要的,需要通过if进行处理. where支持查询 having支持后查询(查询后的数据,再筛选) 代码如下: if ($this->_post('dos ...
- 戴着镣铐起舞——从logo设计说起
一天中午走在路上,顺道去看了学校新媒体艺术与设计系的学生优秀作品展.看到一个logo设计时引发了我很大的兴趣,觉得设计的非常清新活泼,不过并没有拍下来,在这里不能贴图.但是logo设计大家应该都有所概 ...
- 模仿TMALL搜索,下拉提示 优化 用户keypress停顿200毫秒间隔时,在执行异步取数据操作 通过underscore的函数debounce来实现
- DL,DT,DD,比传统table更语义,解析更快的table列表方式
使用dl,dt,dd替代传统的table布局 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" & ...
- lucene4.6 索引创建和搜索例子
本文转自:http://blog.csdn.net/jyf211314/article/details/17503997 点击打开链接 lucene4.6小例子,Lucene全文检 ...
- Html5 Canvas 实现滚动的图片
今天一直在找html5 canvas的使用实例.想画一张地图,再画个小车在上面跑.运气好找到了一个大神写的js代码.该代码实现了图片的左右来回滚动,现在粘贴在博客里记录一下: <html> ...
- [置顶] iOS 应用程序内部国际化,不跟随系统语言
前言:网络上关于iOS国际化的文章很多,但基本上都是基于跟随系统语言的国际化,笔者就不赘述了-0 – 今天要讲的是不跟随系统的切换语言版本方案,即程序内部的切换语言版本方案. 一.总则: 应用内部语言 ...
- char图表
首先看一下chart图表相应的各个属性: 要想使用chart图表,首先须要安装MSChart.exe:安装完后,工具箱里仍然没有,此时要在web.Config文件中加入以下代码: <span s ...