Digking's cave

함수 - 1.문자함수 본문

기초/Oracle

함수 - 1.문자함수

디깅 2019. 4. 24. 10:07
728x90

--1) 오라클의 함수
--문자, 숫자, 날짜, 변환, 일반 함수
--
--2) 문자함수
--LOWER 문자열을 소문자로 변환한다
--     LOWER('ORACLE') -> oracle
--
--UPPER 문자열을 대문자로 변환한다
--     UPPER('oracle') -> ORACLE
--     
--INITCAP 첫 문자만 대문자로 변환하고 나머지는 소문자로 변환한다
--    INITCAP('orAclE') ->Oracle


--ERP 부서가 있는 지역을 검색한다
SELECT loc "ERP 부서 지역"
FROM dept
WHERE LOWER(dname) = 'erp';

--3)문자 연산 함수
--SUBSTR 문자열 내에 지정된 위치의 문자열을 반환한다
--      SUBSTR(문자열, 시작위치, 출력문자의 개수)
--      SUBSTR('oracle', 1, 2) -> or
--LENGTH 문자열의 길이를 반환한다
--        LENGTH('oracle') -> 6
--INSTR 지정된 문자의 위치를 리턴한다
--      INSTR(문자열, 검색문자, [시작위치, [회수]])
--      INSTR('oracle', 'a') -> 3
--TRIM 접두어나 접미어를 잘라낸다
--     TRIM([leading|trailing|both] 제외문자 FROM 문자열)
--     제외문자를 지정하지 않으면 공백문자를 잘라낸다
--     TRIM('o' FROM 'oracle') -> racle
--LPAD, PRAD : 지정된 문자열의 길이만큼 빈부분에 문자를 채운다
--      LPAD(문자열, 출력폭, 채움문자)
--      LPAD('20000',10,'#') ->#####20000

--부서명을 출력한다
SELECT dname, LENGTH(dname) 길이
FROM dept;

--SUBSTR함수를 이용해서 컬럼에 일부 내용만을 검색
SELECT ename, SUBSTR(ename, 2), SUBSTR(ename, -2), SUBSTR(ename, 1, 2), SUBSTR(ename, -2,2)
FROM emp;

--다양한 방법으로 사원 이름에 'L'이 나타나는 위치를 출력
SELECT INSTR('database','a'), INSTR('database','a',3), INSTR('database','a',1,3)
FROM dual;

--TRIM함수를 이용해서 다양한 방법으로 문자열을 검색
SELECT TRIM('남' FROM '남기남'), TRIM(LEADING '남' FROM '남기남'), TRIM(TRAILING '남' FROM '남기남')
FROM dual;

--이름과 급여를 각각 10컬럼으로 검색한다
SELECT RPAD(ename, 10, '*'), LPAD(sal, 10, '*')
FROM emp;

--부서명의 마지막 글자를 제외하고 검색한다
SELECT dname, SUBSTR(dname, 1, LENGTH(dname)-1) 부서
FROM dept;

--4)문자 치환함수
--TRANSLATE 문자단위 치환된 값을리턴한다
--          TRANSLATE(문자열, 검색문자, 치환문자)
--          TRANSLATE('oracle', ' a', '#') -> or#cle
--REPLACE 문자열 단위 치환된 값을 리턴한다
--        REPLACE(문자열, 검색문자열, 치환문자열)
--        REPLACE('oracle', 'or','##') -> ##acle

--TRANSLATE는 'W'와 'O'를 각각 '-'로 치환
--REPLACE는 'Wo'를 '--'로 치환
SELECT TRANSLATE('World of Warcaft', 'Wo', '--') Trans, REPLACE('World of Warcaft', 'Wo', '--') Repl
FROM dual;

반응형

'기초 > Oracle' 카테고리의 다른 글

서브 쿼리  (0) 2019.04.24
함수 - 5.그룹함수와 HAVING절  (0) 2019.04.24
함수 - 4.그룹함수  (0) 2019.04.24
함수 - 3.변환함수  (0) 2019.04.24
함수 - 2.숫자함수  (0) 2019.04.24