728x90
# 정규식 함수
l 정규식 함수
- 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)$');
l .+ : 가운데 글자수가 몇 개인지 상관없음
문제324. 이름, 월급을 출력하는데 월급을 0 대신에 * 로 출력하시오
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 |