오라클 함수

  • Oracle 함수란 특정한 결과 값을 얻기 위해 데이터를 입력할 수 있는 특수 명령어

DUAL 테이블이란?

  • Oracle의 최고 권한 관리자 계정인 SYS 소유의 테이블
  • 임시 연산, 함수의 결과값을 확인할 때 주로 사용

문자 함수

  • UPEER(문자열)
  • 문자열을 모두 대문자로 변경
  • SELECT UPPER(‘AbcdEF’) FROM DUAL;
  • 결과 ABCDEF
  • LOWER(문자열)
  • 문자열을 모두 소문자로 변경
  • SELECT LOWER(‘AbcdEF’) FROM DUAL;
  • 결과 abcdef
  • INITCAP(문자열)
  • 첫글자를 대문자로. 나머지는 소문자로 변경
  • SELECT INITCAP(‘AbcdEF’) FROM DUAL;
  • 결과 Abcdef

  • 특정 단어를 찾으려고 하는데, 찾을 대상들이 형식이 다를 때(‘ABcd’, ‘aBcd’) 일원화하여 쉽게 찾을 수 있다

  • LENGTH(문자열)
  • 문자열의 길이를 구한다
  • SELECT LENGTH(‘가나다라’) FROM DUAL;
  • 결과 4
  • LENGTHB(문자열)
  • 문자열의 길이를 바이트 수로 반환한다
  • SELECT LENGTHB(‘가나다라’) FROM DUAL;
  • 결과 12
  • LENGTH는 문자열 갯수를 반환하지만, LENGTHB는 바이트 수를 반환한다

  • SUBSTR(문자열, 시작위치, 추출길이)
  • 문자열을 시작위치부터 추출길이만큼 구한다. 시작위치는 1부터 시작
  • SELECT SUBSTR(‘가나다라’,2) FROM DUAL;
  • 결과 나다라
  • 추출길이를 지정하지 않으면 문자 끝까지 추출
  • 시작위치에 음수값을 넣으면 끝에서 부터 추출
  • 가(-4) 나(-3) 다(-2) 라(-1), 시작위치에 -1을 넣으면 ‘라’가 출력됩니다

  • INSTR(대상 문자열 데이터(필수),위치를 찾으려는 부분 문자(필수),위치 찾기를 시작할 대상 문자열 데이터 위치,시작 위치에서 찾으려는 문자가 몇번째인지 지정)
  • 문자열안에서 특정 문자를 찾는다
  • SELECT INSTR(‘가나다라’, ‘나다’) FROM DUAL;
  • 결과 2

  • REPLACE(문자열 데이터 또는 열 이름(필수),찾는 문자(필수),대체할 문자)
  • 문자를 다른 문자로 바꾼다
  • SELECT REPLACE(‘010-1111-2222’, ‘-‘) FROM DUAL;
  • 01011112222
  • 만약 대체할 문자를 지정하지 않는다면 찾는 문자는 삭제 된다

  • LPAD(문자열 또는 열이름(필수),데이터 자릿수(필수),빈공간에 채울 문자)
  • 빈 공간이 있다면 왼쪽에 특정 문자로 채움
  • SELECT RPAD(‘201204-‘, 14, ‘*’) FROM DUAL;
  • 결과 201204-***
  • RPAD는 사용법은 같고, 오른쪽을 특정 문자로 채움

  • CONCAT(문자열,문자열)
  • 두 문자열을 합침
  • SELECT CONCAT(‘AB’,’CD’) FROM DUAL;
  • ABCD

  • TRIM(삭제옵션, 삭제할 문자) FROM 원본문자열 데이터(필수)
  • 특정 문자 삭제
  • SELECT TRIM(‘A’ FROM ‘ABCDEFG’) FROM DUAL;
  • BCDEFG