Database Reference
In-Depth Information
PARTITION RANGE ITERATOR
The execution plans described in the previous section contain the
PARTITION RANGE SINGLE
operation. This was
because the query optimizer recognizes that only a single partition contains processing-relevant data. Obviously,
there are situations where several partitions have to be accessed. For example, in the following query, the restriction
uses a less-than condition (
<
) instead of being based on an equality condition (
=
) Thus, the operation becomes a
PARTITION RANGE ITERATOR
, and the
Pstart
and
Pstop
columns show the range of partitions that are accessed
(see Figure
13-7
). In addition, the
Starts
column shows that operation 1 is executed only once, but operation 2 is
executed once per partition. In other words, seven full partition scans are executed:
SELECT * FROM t WHERE n1 = 3 AND d1 < to_date('2014-07-19','YYYY-MM-DD')
------------------------------------------------------------------
| Id | Operation | Name | Starts | Pstart| Pstop |
------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | | |
| 1 |
PARTITION RANGE ITERATOR
| | 1 |
25
|
31
|
|* 2 | TABLE ACCESS FULL | T | 7 | 25 | 31 |
------------------------------------------------------------------
2 - filter(("N1"=3 AND "D1"<TO_DATE(' 2014-07-19 00:00:00', 'syyyy-mm-dd hh24:mi:ss')))
Figure 13-7.
Representation of a
PARTITION RANGE ITERATOR
operation