返回数说广场
1
数据库可以使用几个不同的访问路径从表中检索数据。
全表扫描
这种类型的扫描从一个表读取所有行,并滤掉那些不符合选择条件的行。数据库顺序扫描段中的所有数据块,包括那些高水位标记以下的块,高水位标记用来分隔已使用和未使用的空间
Rowid扫描
行的 rowid 指定包含行的数据文件和数据块,以及行在该块中的位置。数据库通过语句的 WHERE 子句或一个索引扫描,首先获取所选的行的 rowids,然后基于这些 rowid查找每个选定的行。
索引扫描
此扫描搜索被SQL 语句访问的索引列的值。如果该语句仅访问已被索引的列,则数据库直接从索引读取索引的列值。
簇扫描
簇扫描用来检索存储在一个索引化的表簇中的一个表中的数据,具有相同的簇键的所有行都存储在同一个数据块中 。Oracle数据库首先通过扫描簇索引来获取所选行的 rowid。然后基于此 rowid查找相应行。
哈希扫描
哈希扫描用于查找哈希群集中的行,其中具有相同哈希值的所有行都存储在同一个数据块中。Oracle数据库首先通过将哈希函数应用于由该语句指定的簇键值,以获得哈希值。然后扫描包含具有此哈希值的行的数据块
0
1 212
分享
评论
热门数说


