반응형

 

INSTR( [문자열], [찾을문자값], [찾기시작할 위치(1,-1)], [찾은결과순번(1,..n)] )

오라클에서는 문자위치를 찾을때 INSTR함수를 사용한다.

찾는문자가 없으면 0을 반환하며, 찾는 단어의 앞글자의 인덱스를 반환한다.

찾기시작할위치에 음수를 쓰면, 우측부터 스캔한다.

 

 

😊이런경우 사용한다

예를 들어, 조회할 조건이 납부, 미납부, 부분납부가 있다고 가정하자.

납부 FLAG를 1 // 미납 FLAG를 3 // 부분납부 FLAG를 2 로 저장한 테이블이 있다고 가정하였다.

 

이런경우, 납부+부분납부한 경우를 조회하고 싶을때 

INSTR 함수를 이용하여 조회할 수 있다.

 

WITH TEST_DB AS(
SELECT '1' AS FLAG, 'A101' AS 호수 FROM DUAL
UNION
SELECT '2' AS FLAG, 'A201' AS 호수 FROM DUAL
UNION
SELECT '3' AS FLAG, 'A301' AS 호수 FROM DUAL
UNION
SELECT '2' AS FLAG, 'A401' AS 호수 FROM DUAL
UNION
SELECT '3' AS FLAG, 'A501' AS 호수 FROM DUAL
)
SELECT * FROM TEST_DB WHERE INSTR('12', NVL(FLAG,0)) > 0;​

이렇게 조회해볼경우

위와 같은 조회결과를 얻을 수 있다.

 

 

🍯TIP

반응형

+ Recent posts