SET Operator : SET « Collections « Oracle PL/SQL Tutorial





The SET operator first converts a nested table into a set, removes duplicate elements from the set, and returns the set as a nested table.

SQL>
SQL> CREATE OR REPLACE PROCEDURE set_example AS
  2    TYPE nestedTableType IS TABLE OF VARCHAR2(10);
  3    myTable1 nestedTableType;
  4    myTable2 nestedTableType;
  5    count_var INTEGER;
  6  BEGIN
  7    myTable1 := nestedTableType('F', 'G', 'S', 'G');
  8    myTable2 := SET(myTable1);
  9    DBMS_OUTPUT.PUT('myTable2: ');
 10    FOR count_var IN 1..myTable2.COUNT LOOP
 11      DBMS_OUTPUT.PUT(myTable2(count_var) || ' ');
 12    END LOOP;
 13    DBMS_OUTPUT.PUT_LINE(' ');
 14  END set_example;
 15  /

Procedure created.

SQL> CALL set_example();
myTable2: F G S

Call completed.

SQL>
SQL>










26.12.SET
26.12.1.SET Operator
26.12.2.IS A SET operator checks whether a variable is a VARRAY or NESTED TABLE collection variable
26.12.3.IS A SET, table collection
26.12.4.MULTISET EXCEPT operator finds the elements remaining from the first set after removing any matching elements from the second set
26.12.5.MULTISET EXCEPT table collection
26.12.6.MULTISET INTERSECT operator finds the intersection or matching values between two sets
26.12.7.MULTISET INTERSECT table collection
26.12.8.MULTISET UNION DISTINCT table collection
26.12.9.MULTISET UNION operator performs a UNION ALL operation on two collections
26.12.10.MULTISET UNION table collection
26.12.11.SET operator removes any duplicates from the set and returns a new set with unique values
26.12.12.SET(table collection)