본문 바로가기

빅데이터과정/SQL

#8_140624_정규식 함수

728x90

# 정규식 함수



정규식 함수
regexp_like :
regexp_substr
regexp_instr
regexp_replace
regexp_count
^ : 시작
$ : 
자릿수
| : 또는






문제322. 사원 이름에 EN 또는 IN 을 포함하고 있는 사원들의 사원번호이름월급을 출력하시오

#튜닝 전
SELECT empno, ename, sal
FROM EMP
WHERE ename LIKE '%EN%' or ename LIKE '%IN';

#튜닝 후
SELECT empno,ename, sal
FROM EMP
WHERE regexp_like(ename,'(EN|IN)');



문제323. 이름의 첫글자가 S로 시작하고 끝글자가 T또는 H로 끝나는 사원들의 이름을 출력하시오

SELECT ename
FROM EMP
WHERE regexp_like(ename,'^S...(T|H)$');

SELECT ename
FROM EMP
WHERE regexp_like(ename,'^S.+(T|H)$');
.+ : 가운데 글자수가 몇 개인지 상관없음



문제324. 이름월급을 출력하는데 월급을 대신에 로 출력하시오

SELECT ename, REPLACE(sal,0,'*') salary
FROM EMP;



문제325. 이름월급을 출력하는데 숫자 0,1,2 는 로 출력하시오

SELECT ename, regexp_replace(sal,'[0-2]','*') salary
FROM EMP;


'빅데이터과정 > SQL ' 카테고리의 다른 글

#43_140812_계층적질의문  (0) 2014.08.12
#8_140624_with  (0) 2014.07.14
#7_140623_DCL(Data Control Language)  (0) 2014.07.14
#7_140623_CORRELATED SUBQUERY  (0) 2014.07.14
#7_140623_마지막 문제  (0) 2014.07.14