특정문자, 특정문자 앞쪽값, 특정문자 뒷편값 갖고오기

SELECT '123-456',SUBSTR('123-456',1,INSTR('123-456','-')-1),reverse(substr(reverse('123-456'), 1, instr(reverse('123-456'), '-') - 1)) FROM dual;
결과 : 123-456, 123, 456

해당 구문의 문제는 중간에 특정문자가 2개 들어있는 경우 해당 문자의 제일 첫번째 단락과 제일 끝 단락을 갖고온다.
예를 들어 123-456-789를 위 구문에 적용시
결과는 : 123-456-789, 123, 789가 된다.


특정문자의 갯수 알아오기

SELECT length('123-456-789') - length(replace('123-456-789', '-', '')) CHAR_COUNT
FROM dual;

해당 구문의 경우 오라클에 함수가 없어서 어쩔 수 없이 이와 같은 방식으로
Posted by Arkanoid
: