Parallel UDR in select list for parallel insert

The following sample query is a parallel insert statement. Suppose you create an opaque data type circle, create a table cir_t that defines a column of type circle, create a UDR area, and then execute the following sample query:
INSERT INTO cirt_t_target
SELECT circle, area(circle) 
   FROM cir_t
   WHERE circle > "(6,2,4)";
In this query, the following operations can execute in parallel:
  • The expression circle > “(6,2,4)” in the WHERE clause

    If the table cir_t is fragmented, multiple scans of the table can execute in parallel, one scan on each fragment. Then multiple > comparison operators can execute in parallel, one operator per fragment.

  • The UDR area(circle) in the select list

    If the table cir_t has multiple fragments, multiple area UDRs can execute in parallel, one UDR on each fragment.

  • The INSERT into cir_t_target

    If the table cir_t_target has multiple fragments, multiple INSERT statements can execute in parallel, one on each fragment.


Copyright© 2019 HCL Technologies Limited