sample表扫描检索从一个简单的表或一个复杂的数据的随机样本SELECT的语句,如涉及联接和意见的陈述。
8.2.4.1当优化器选择样本表扫描时
当语句FROM子句包含SAMPLE关键字时,数据库将使用样本表扫描。
该SAMPLE子句具有以下形式:
SAMPLE(sample_percent) :数据库读取表中指定百分比的行以执行样本表扫描。SAMPLE BLOCK(sample_percent) :数据库读取指定百分比的表块以执行样本表扫描。
所述sample_percent指定总的行或块计数的百分比以包括于样品中。该值必须在最大范围内.000001,但不包括100。此百分比表示为块样本选择了每一行或每一行簇的概率。这并不意味着数据库精确地检索到行的sample_percent。
注意:
仅在全表扫描或索引快速全扫描期间才可以进行块采样。如果存在更有效的执行路径,则数据库不会对块进行采样。要保证对特定表或索引进行块采样,请使用FULL或INDEX_FFS提示。
也可以看看:
- “ 通过提示影响优化器 ”
- Oracle Database SQL语言参考以了解该
SAMPLE条款
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进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




