프로젝트 진행 중 함수안에 인자 값을 '111','222','3333' 같은 내용을 보내서 IN 함수의 인자 값으로 사용 하고자 했으나 varchar2형식으로 넘어 가기 때문에 에러가 발생 되어 검색 중 아래와 같은 쿼리문으로 문자여을 쪼개는 작업을 이용해서 해결


SELECT REGEXP_SUBSTR('111,222,333,444,555,666,777','[^,]+',1,LEVEL)

  FROM DUAL

  CONNECT BY LEVEL <= LENGTH('111,222,333,444,555,666,777') - LENGTH(REPLACE('111,222,333,444,555,666,777',',','')) + 1


'111,222,333,444,555,666' 이렇게 정보를 보내주면


111

222

333

444

555

666

이런 식으로 전달을 해줍니다. IN함숨에 select문으로 인자값을 보내주는 방식 처리

반응형

'DB > ORACLE' 카테고리의 다른 글

oracle to_char 숫자->문자 변환시 fm사용  (0) 2018.05.28
DBMS_LOB.SUBSTR ora-06502 발생  (0) 2017.11.16
sys비밀번호 분실시  (0) 2016.07.22
sql파일 실행 방법  (0) 2016.02.18
오라클 리스터 재시작 명령  (0) 2015.03.09
Posted by 질주하는구
,