Block and row identifier preparation information

For some access plans, it is more efficient if the qualifying row and block identifiers are sorted and duplicates are removed (in the case of index ORing), or if a technique is used to determine which identifiers appear in all of the indexes being accessed (in the case of index ANDing) before the table is accessed.

There are three main uses of the identifier preparation information that is shown in explain output:
  • Either of the following statements indicates that Index ORing was used to prepare the list of qualifying identifiers:
       Index ORing Preparation
       Block Index ORing Preparation
    Index ORing refers to the technique of accessing more than one index and combining the results to include the distinct identifiers that appear in any of the indexes. The optimizer considers index ORing when predicates are connected by OR keywords or there is an IN predicate.
  • Either of the following statements indicates that input data was prepared for use during list prefetching:
       List Prefetch Preparation
       Block List Prefetch RID Preparation
  • Index ANDing refers to the technique of accessing more than one index and combining the results to include the identifiers that appear in all of the accessed indexes. Index ANDing begins with either of the following statements:
       Index ANDing
       Block Index ANDing
    If the optimizer has estimated the size of the result set, the estimate is shown with the following statement:
       Optimizer Estimate of Set Size: n
    Index ANDing filter operations process identifiers and use bit filter techniques to determine the identifiers that appear in every accessed index. The following statements indicate that identifiers were processed for index ANDing:
       Index ANDing Bitmap Build Using Row IDs
       Index ANDing Bitmap Probe Using Row IDs
       Index ANDing Bitmap Build and Probe Using Row IDs
       Block Index ANDing Bitmap Build Using Block IDs
       Block Index ANDing Bitmap Build and Probe Using Block IDs
       Block Index ANDing Bitmap Build and Probe Using Row IDs
       Block Index ANDing Bitmap Probe Using Block IDs and Build Using Row IDs
       Block Index ANDing Bitmap Probe Using Block IDs
       Block Index ANDing Bitmap Probe Using Row IDs
    If the optimizer has estimated the size of the result set for a bitmap, the estimate is shown with the following statement:
       Optimizer Estimate of Set Size: n
If list prefetching can be performed for any type of identifier preparation, it will be so indicated with the following statement:
   Prefetch: Enabled