본문 바로가기
Database

[Oracle] REPLACE()

by JJH0100 2022. 11. 3.
728x90
반응형

EX01

emp 테이블에서 아래와 같이 20 번 부서에 소속된 직원들의 이름과 3-4 번째 글자만 '-' 으로 변경해서 출력하세요 .

SELECT ename, REPLACE(ename, SUBSTR(ename, 2, 2), '--') "REPLACE"
FROM emp
WHERE deptno = 20;

 

 

EX02

Student 테이블에서 아래와 같이 1 전공(deptno1) 101 번인 학생들의 이름과 주민등록번호를 출력하되 주민등록번호의 뒤 7자리는 ‘-’ '/'  로 표시되게 출력하세요.

SELECT name, REPLACE(jumin, SUBSTR(jumin, 7, 7), '-/-/-/-') "REPLACE"
FROM student
WHERE deptno1 = 101;

 

EX03

Student 테이블에서 아래 그림과 같이 1 전공이 102 번인 학생들의 이름과 전화번호, 전화번호에서 국번 부분만 ‘*’ 처리하여 출력하세요.

단 모든 국번은 3자리로 간주합니다.

SELECT name, tel, REPLACE(tel, SUBSTR(tel, 5, 3), '***') "REPLACE"
FROM student
WHERE deptno1 = 102;
select name, tel, replace(tel, substr(tel,instr(tel,')',1)+1,3),'***') Replace
from student
where deptno1=102;

 

 

EX04

Student 테이블에서 아래와 같이 deptno1 101 번인 학과 학생들의 이름과 전화번호와 전화번호에서 지역번호와 국번을 제외한 나머지 번호를 * 로 표시해서 출력하세요.

SELECT name, tel, REPLACE(tel, SUBSTR(tel, 9, 4), '****') "REPLACE"
FROM student
WHERE deptno1 = 101;
select name, tel, replace(tel, substr(tel,instr(tel,'-',1,1)+1,4),'****') replace
from student
where deptno1=101;

728x90
반응형

'Database' 카테고리의 다른 글

단일행 함수 TO_CHAR 예제  (0) 2022.11.07
[Oracle] 숫자함수  (0) 2022.11.03
[Oracle] LPAD()  (0) 2022.11.03
[Oracle] to_char 시간표시 방법  (0) 2022.11.03
[Oracle] emp테이블을 이용한 SELECT  (0) 2022.11.03

댓글