[Oracle] 단일함수 - 문자함수
UPPER(문자값), LOWER(문자값)
UPPER(문자값) : 문자값을 전달받아 대문자로 변환하여 반환하는 함수
LOWER(문자값) : 문자값을 전달받아 소문자로 변환하여 반환하는 함수
UPPER 함수 또는 LOWER 함수를 이용하면 대소문자 구분없이 비교 가능하다.
--EMP 테이블에서 사원이름이 [SMITH]인 사원의 사원번호,사원이름,급여 검색하기
SELECT EMPNO,ENAME,SAL FROM EMP WHERE UPPER(ENAME)=UPPER('SMITH');
SELECT EMPNO,ENAME,SAL FROM EMP WHERE UPPER(ENAME)=UPPER('smith');
INITCAP(문자값)
문자값을 전달받아 첫문자만 대문자로 변환하고 나머지는 소문자로 변환하여 반환하는 함수다.
--EMP 테이블에서 ENAME과
--ENAME에서 첫문자만 대문자로 변환하고 나머지는 소문자로 변환하여 검색하기
SELECT ENAME,INITCAP(ENAME) FROM EMP;
CONCAT(문자값,문자값)
두 개의 문자값을 전달받아 결합하여 반환하는 함수다.
|| 기호와 동일한 기능을 제공한다.
--EMP 테이블에서 JOB, ENAME을 검색하고
--CONCAT을 이용하여 JOB, ENAME의 문자값을 결합한 결과와
--||기호를 이용하여 JOB, ENAME의 문자값을 결합한 결과를 검색하기
SELECT ENAME,JOB,CONCAT(ENAME,JOB),ENAME||JOB FROM EMP;
SUBSTR(문자값,시작위치,갯수)
문자값을 전달받아 시작위치(INDEX)부터 갯수만큼의 문자을 분리하여 반환하는 함수다.
--EMP테이블에서 EMPNO가 7499인 행의
--EMPNO, ENAME, JOB을 검색하고
--JOB에서 문자 6번째 자리에서 뒤로 3자리 분리하여 반환하여 검색하기
SELECT EMPNO,ENAME,JOB,SUBSTR(JOB,6,3) FROM EMP WHERE EMPNO=7499;
LENGTH(문자값)
문자값을 전달받아 문자의 갯수를 반환하는 함수다.
--EMP테이블에서 EMPNO가 7499인 행의
--EMPNO, ENAME, ENAME의 문자의 갯수를 검색하기
SELECT EMPNO,ENAME,LENGTH(ENAME) FROM EMP WHERE EMPNO=7499;
INSTR(문자값,검색문자값,시작위치,갯수)
문자값을 전달받아 검색문자값를 시작위치부터 검색하여 원하는 갯수의 시작위치를 반환하는 함수다. 검색문자가 없는 경우 0을 반환한다.
SELECT EMPNO,ENAME,JOB,INSTR(JOB ,'A',1,2) FROM EMP WHERE EMPNO=7499;
SELECT EMPNO,ENAME,JOB,INSTR(JOB,'X',1,1) FROM EMP WHERE EMPNO=7499;
LPAD(문자값,자릿수,채울문자), RPAD(문자값,자릿수,채울문자)
LPAD: 문자값을 전달받아 자릿수만큼의 길이로 오른쪽 정렬하여 검색하고 왼쪽 남은 자릿수에는 채울문자로 채워 반환하는 함수
RPAD: 문자값을 전달받아 자릿수만큼의 길이로 왼쪽 정렬하여 검색하고 오른쪽 남은 자릿수에는 채울문자로 채워 반환하는 함수
--SAL을 검색하여 SAL만큼 넣고 남은 자리는 *로 채워서 8자리 표현하여 검색하기
SELECT EMPNO,ENAME,SAL,LPAD(SAL,8,'*'),RPAD(SAL,8,'*') FROM EMP WHERE EMPNO=7844;
TRIM({LEADING|TRAILING} 제거문자 FROM 문자값)
문자값을 전달받아 앞(LEADING) 또는 뒤(TRAILING)에 존재하는 제거문자를 모두 제거하여 반환하는 함수다.
--앞에 있는 'S', 뒤에 존재하는 N을 제거하여 반환하여 검색하기
SELECT EMPNO,ENAME,JOB,TRIM(LEADING 'S' FROM JOB),TRIM(TRAILING 'N' FROM JOB) FROM EMP WHERE EMPNO=7844;
REPLACE(문자값,검색문자,변환문자)
문자값을 전달받아 검색문자를 찾아 변환문자로 변환하여 반환하는 함수다.
--'MAN'을 찾아 'PERSON'으로 바꿔서 검색하기
SELECT EMPNO,ENAME,JOB,REPLACE(JOB,'MAN','PERSON') FROM EMP WHERE EMPNO=7844;
Author And Source
이 문제에 관하여([Oracle] 단일함수 - 문자함수), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@jcrs0907/oracle-function-character저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)