oracle 抽样_ORACLE ANALYZE使用小结

ANALYZE的介绍

使用ANALYZE可以收集或删除对象的统计信息、验证对象的结构、标识表或cluster中的行迁移/行链接信息等。官方文档关于ANALYZE功能介绍如下:

·Collect or delete statistics about an index or index partition, table or table partition, index-organized table, cluster, or scalar object attribute.

·Validate the structure of an index or index partition, table or table partition, index-organized table, cluster, or object reference (REF).

·Identify migrated and chained rows of a table or cluster.

·

ANALYZE的使用

ANALYZE TABLE可以指定分析: 表、所有字段、所有索引字段、所有索引。 若不指定对应对象则表示全部都分析

#完全分析,采样100%

ANALYZE TABLE TABLE_NAME COMPUTE STATISTICS;

ANALYZE TABLE TABLE_NAME COMPUTE STATISTICS FOR TABLE FOR ALL COLUMNS FOR ALL INDEXES;

注意:上面两者是等价的。

#抽样分析,采样40%

ANALYZE TABLE TABLE_NAME ESTIMATE STATISTICS SAMPLE 40 PERCENT;

对于大表而言,收集统计信息相当于全表扫描,相当耗费时间和资源,可以用抽样估算法来收集统计信息,这样就可以节省时间和资源,如果不是要求要有精确数据的话,尽量采用抽样分析法。可以指定采样比例。

分析表统计信息

#仅仅生成表的statistics,不生成列的直方图信息

ANALYZE TABLE TABLE_NAME COMPUTE STATISTICS FOR TABLE;

分析索引字段统计信息

#分析了表,并仅对表上的索引列产生histograms

ANALYZE TABLE TEST COMPUTE STATISTICS FOR ALL INDEXED COLUMNS;

分析指定列统计信息

ANALYZE TABLE TEST COMPUTE STATISTICS FORCOLUMNS COLUMN_NAME1, COLUMN_NAME2;

分析所有列统计信息

#分析表,同时生成所有列的histograms

ANALYZE TABLE TEST COMPUTE STATISTICS FOR ALL COLUMNS;

分析索引统计信息

#指定索引分析

SQL> ANALYZE INDEX INDEX_NAME COMPUTE STATISTICS ;

#分析所有索引

SQL> ANALYZE TABLE TABLE_NAME COMPUTE STATISTICS FOR ALL INDEXES;

删除统计信息

#删除统计分析数据

ANALYZE TABLE DELETE STATISTICS;

#删除索引对应的统计信息

ANALYZE INDEX DELETE STATISTICS;

#注意:下面这种语法是错误的,见过有些文章有介绍这种方法。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值