본문 바로가기

04번. IT 힌트얻기/▶ DB/ SQL

[SQL Function] INSTR

-- INSTR(A,B,C,D) : A(str)에서 B(str)를 (A의) 인덱스 C(int)부터 D(int)번째 나올때 까지 찾는다

예시)
SELECT SUBSTR(MSG,1,INSTR(MSG,'|',1,1)-1) MSG_1,
SUBSTR(MSG, INSTR(MSG,'|',1,1)+1, INSTR(MSG,'|',1,2)-INSTR(MSG,'|',1,1)-1)MSG_2,
SUBSTR(MSG, INSTR(MSG,'|',1,2)+1, INSTR(MSG,'|',1,3)-INSTR(MSG,'|',1,2)-1)MSG_3,
SUBSTR(MSG, INSTR(MSG,'|',1,3)+1, INSTR(MSG,'|',1,4)-INSTR(MSG,'|',1,3)-1)MSG_4,
SUBSTR(MSG, INSTR(MSG,'|',1,4)+1) MSG5
,INSTR(MSG,'|',1,4)
FROM
(SELECT '111|222|333|444|555' MSG FROM DUAL);

-- 자주 쓰이지는 않지만 가끔 필요한 쿼리이며 분석등을 위해서 알아두면 편리한 Function 이라고 생각됨

'04번. IT 힌트얻기 > ▶ DB/ SQL ' 카테고리의 다른 글

[SQL고수되기] 두번째 이야기  (0) 2011.09.29
[SQL고수되기] 첫번째 이야기  (0) 2011.09.29
대용량 데이터베이스를 위한 어드바이스  (0) 2011.09.29
HASH JOIN  (0) 2011.09.27
SORT MERGE JOIN  (0) 2011.09.27