CREATE OR REPLACE FUNCTION validate_leave(p_empid NUMBER)
RETURN VARCHAR2
AS
BEGIN
RETURN TO_CHAR(p_empid);
END;
Function created.
CREATE TABLE test (EMP_ID NUMBER, FIRST_NAME VARCHAR2(255), LAST_NAME VARCHAR2(255) NOT NULL)
Table created.
INSERT INTO test VALUES (1, 'Gerald', 'Venzl')
1 row(s) inserted.
INSERT INTO TEST VALUES (2, 'Tom', 'Drake')
1 row(s) inserted.
COMMIT
Statement processed.
SELECT regexp_substr(Validate_Leave(emp_id),'[a-zA-Z0-9]+',1,level) leave_name
FROM test
CONNECT BY level < regexp_count(Validate_Leave(emp_id),',') + 2
LEAVE_NAME | 1 | 2 |
---|
DECLARE
TYPE t_emp_id IS TABLE OF VARCHAR2(255);
coll_emp_id t_emp_id;
BEGIN
SELECT regexp_substr(Validate_Leave(emp_id),'[a-zA-Z0-9]+',1,level) leave_name
BULK COLLECT INTO coll_emp_id
FROM test
CONNECT BY level < regexp_count(Validate_Leave(emp_id),',') + 2;
END;
Statement processed.