Mega Code Archive

 
Categories / Oracle PLSQL / PL SQL
 

SET operator removes any duplicates from the set and returns a new set with unique values

SQL> CREATE OR REPLACE TYPE list IS TABLE OF NUMBER;   2  / Type created. SQL> SQL> CREATE OR REPLACE FUNCTION format_list(set_in LIST) RETURN VARCHAR2 IS   2    returnValue VARCHAR2(2000);   3  BEGIN   4      FOR i IN set_in.FIRST..set_in.LAST LOOP   5            returnValue := set_in(i)||' ';   6      END LOOP;   7      RETURN returnValue;   8  END format_list;   9  / Function created. SQL> SQL> DECLARE   2    a LIST := list(1,2,3,3,4,4,5,6,6,7);   3  BEGIN   4    dbms_output.put_line(format_list(SET(a)));   5  END;   6  / 7 PL/SQL procedure successfully completed.