일단 구글 검색하니..
http://blog.naver.com/iooic2/220737932914
위에꺼 보고 구현하긴했는데요
단점이..
CREATE OR REPLACE TYPE VARCHAR_ARR is VARRAY(50) OF VARCHAR2(200);
배열을 선언해서 해야되기떄문에
split 할 대상이.. 50개를 넘어갈경우 첨자 오류가 발생합니다
위처럼 첨자 오류 없이
내가 보낸 str를 list로 반환하는 split 함수 구현이 가능한가요?
ex) fn_split(( '11#22#33' , '#') 호출시
11
22
33
를 리스트로 반환..
저 리스트를 기반으로 다른 프로시저에서 for문을 돌려야되는 상황입니다
좋은방법있으면 부탁드릴게요..
쿼리문으로 한다면 아래처럼 되긴 하겠지만 함수를 사용하신다니.. 테이블 펑션으로 구현한 예제가 있네요. 다른 방법은 다음분께서 ^^;
https://paulzipblog.wordpress.com/2019/10/13/regexp_split/
SQL> select regexp_substr('11#22#33','[^#]+', 1, level) from dual 2 connect by regexp_substr('11#22#33', '[^#]+', 1, level) is not null ; REGEXP_SUBSTR('11#22#33','[^#]+' -------------------------------- 11 22 33