This section discusses the following rules for executing queries in parallel.
A SELECT
statement can be executed in parallel only if the following conditions are satisfied:
The query includes a parallel hint specification (PARALLEL
or PARALLEL_INDEX
) or the schema objects referred to in the query have a PARALLEL
declaration associated with them.
At least one table specified in the query requires one of the following:
A full table scan
An index range scan spanning multiple partitions
A parallel table function
The DOP for a query is determined by the following rules:
The query uses the maximum DOP taken from all of the table declarations involved in the query and all of the potential indexes that are candidates to satisfy the query (the reference objects). That is, the table or index that has the greatest DOP determines the query's DOP maximum query directive.
If a table has both a parallel hint specification in the query and a parallel declaration in its table specification, the hint specification takes precedence over parallel declaration specification. See Table 8-2 for precedence rules.