SQL Function to get comma separated column values

To get a list of column values as comma separated ones, use the following SQL function.

CREATE OR REPLACE FUNCTION get_col_values
RETURN VARCHAR2
AS
   v_empnames   VARCHAR2 (4000);

   CURSOR c_emp_names
   IS
      SELECT DISTINCT emp_name FROM employees;
BEGIN
   FOR i IN c_emp_names
   LOOP
      v_empnames := v_empnames || TRIM (i.emp_name) || ',';
   END LOOP;

   v_empnames := RTRIM (v_empnames, ', ');
   RETURN v_empnames;
END;

The above query returns comma separated employee names from emp_name column in Employees table. Modify the above function for your own requirement.

Now we can access the function using the following SQL query.

SELECT get_col_values() FROM dual;

Search