暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 19C SAMPLE 表扫描

原创 Asher.HU 2021-02-04
850


sample表扫描检索从一个简单的表或一个复杂的数据的随机样本SELECT的语句,如涉及联接和意见的陈述。


8.2.4.1当优化器选择样本表扫描时

当语句FROM子句包含SAMPLE关键字时,数据库将使用样本表扫描

SAMPLE子句具有以下形式:

  • SAMPLE (sample_percent) :数据库读取表中指定百分比的行以执行样本表扫描。
  • SAMPLE BLOCK (sample_percent) :数据库读取指定百分比的表块以执行样本表扫描。

所述sample_percent指定总的行块计数的百分比以包括于样品中。该值必须在最大范围内.000001,但不包括100此百分比表示为块样本选择了每一行或每一行簇的概率。这并不意味着数据库精确地检索到行的sample_percent


注意:

仅在全表扫描或索引快速全扫描期间才可以进行块采样。如果存在更有效的执行路径,则数据库不会对块进行采样。要保证对特定表或索引进行块采样,请使用FULLINDEX_FFS提示。


也可以看看:

 

8.2.4.2样本表扫描:示例

本示例使用样本表扫描来访问表的1%employees,按块而不是行进行采样。

示例8-2样本表扫描

SELECT * FROM hr.employees SAMPLE BLOCK (1); 

EXPLAIN PLAN语句输出可能如下所示:

-------------------------------------------------------------------------
| Id  | Operation            |  Name       | Rows  | Bytes | Cost (%CPU)|
-------------------------------------------------------------------------
|   0 | SELECT STATEMENT     |             |     1 |    68 |     3  (34)|
|   1 |  TABLE ACCESS SAMPLE | EMPLOYEES   |     1 |    68 |     3  (34)|
-------------------------------------------------------------------------
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论