Replace (특정철자를 다른철자로 변경하기)
select ename, replace(sal, 0 , '*')
from emp;
노*정 으로 출력 되게 하시오 (병원 전광판에 많이 쓰이는 SQL 함수)
select replace(ename, substr(ename,2,1),'*')
from emp14
설명 : 가운데 이름을 * 로 대체하여 출력해야하기 때문에
replace ( 컬럼명, 바뀔철자, '대체할 문자')
컬럼명은 : ename
바뀔 철자 : 이름 두번째 철자를 추출해야한다.
—> substr(ename , 2, ,1 ) —> ename 의 두번째 순서의 글자를 1개만 추출한다
대체할 문자 : '*'
select 절의 의미 : ename 의 (2번째철자로부터 1개) 철자를 추출하여서 * 으로 대체해라
LPAD, RPAD (특정 철자를 n 개 만큼 채우기)
select ename, lpad(sal, 10, '*') : 전체 10 자리로 잡고 나머지는 * 로 왼쪽방향으로 채워 넣는다
form emp
만약 rpad 함수를 쓰게 되면 오른쪽으로 채우게 된다.
'Oracle > SQL' 카테고리의 다른 글
SQL 단일행 함수 - 숫자함수 (Round, Trunc, Mod)반올림, 숫자버리기, 나누기 (0) | 2021.11.19 |
---|---|
SQL 단일행 함수 - 문자함수 (Trim, Rtrim, Ltrim) 문자잘라내기 (0) | 2021.11.19 |
SQL 단일행 함수 - 문자함수 Instr (특정철자의 위치 출력) (0) | 2021.11.19 |
SQL 단일행 함수 - 문자함수 Length (문자열길이출력) (0) | 2021.11.19 |
SQL 단일행 함수 - 문자함수 Substr( 문자에서 특정단어 or 철자 추출 ) (0) | 2021.11.19 |