-------------
SELECT STATEMENT, GOAL = ALL_ROWS
SORT AGGREGATE
INDEX FULL SCAN (MIN/MAX) IDX_HISTORYALARM$QUERYID
由于索引本身已经排序,因此在计算最大最小值时只需要很小的代价。
索引跳跃扫描
当查询条件中带有符合索引中的列,但是不包含前导列时,就可能导致索引跳跃扫描。数据库将一个复合索引拆分为多个逻辑子索引,符合索引前导列的不同值决定逻辑子索引的数量,即前导列的不同值越少,索引跳跃式扫描的性能就越好。
select value from t3 where value = 'test'
DESCRIPTION OBJECT NAME
-----------------------------------------------------------------------
SELECT STATEMENT, GOAL = ALL_ROWS
INDEX SKIP SCAN IDX_T3_COMBINE
索引快速全扫描
当索引本身包含查询中指定的所有列时,Oracle执行索引快速全扫描。索引快速全扫描和索引全扫描的区别在于:索引全扫描使用单块读操作,而索引快速全扫描使用多块读。这种扫描不能用于避免排序,因为数据块是通过无序的多块读取来读取的。
select queryid from historyalarm
DESCRIPTION OBJECT NAME
-----------------------------------------------------------------------
SELECT STATEMENT, GOAL = ALL_ROWS
INDEX FAST FULL SCAN IDX_HISTORYALARM$QUERYID