Deve.haeri

[DB/기본] Oracle 기본 함수 정리 본문

DB

[DB/기본] Oracle 기본 함수 정리

hhaeri 2021. 1. 5. 01:09

1. 문자 함수

 - 문자 데이터를 입력 받아 문자나 숫자를 반환하는 함수

종류 의미 예시
INITCAP 첫 글자는 대문자
나머지는 소문자로 변환
INITCAP(‘aPPLe’) -> Apple
LOWER 모두 소문자로 변환 LOWER(‘APPLE’) -> apple
UPPER 모두 대문자로 변환 UPPER(‘apple’) -> APPLE

2. 문자열 길이 반환 함수

 - 문자열의 길이나 바이트 수를 반환하는 함수

종류 의미 예시
LENGTH 문자열의 글자 수를 반환 LENGTH(‘apple’) -> 5
LENGTH(‘사과’) -> 2
LENGTHB 문자열의 바이트 수를 반환 LENGTHB(‘apple’) -> 5
LENGTHB(‘사과’) -> 4 또는 6
참고 영문, 숫자 : 1바이트
한글 : 2바이트 또는 3바이트(UTF-8)

3. 문자열 변경 함수

 - 기존 문자열을 변경하여 새로운 문자열을 반환하는 함수

종류 의미 예시
CONCAT 두 문자열을 결합(|| 과 동일) CONCAT(‘APP’, ‘LE’) -> APPLE
SUBSTR 문자열 일부를 추출 SUBSTR(‘APPLE’, 1, 3) -> APP
INSTR 특정 문자의 첫 번째 출현 위치를 반환 INSTR(‘SQL*PLUS’, ‘*’) -> 4
LPAD 왼쪽에 지정문자 삽입, 숫자만큼 지정 문자로 글자수 맞춤 LPAD(‘SQL’, 6, ‘*’) -> ***SQL
RPAD 오른쪽에 지정문자 삽입, 숫자만큼 지정 문자로 글자수 맞춤 RPAD(‘SQL’, 6, ‘*’) -> SQL***
LTRIM 왼쪽 지정 문자 삭제 LTRIM(‘  APPLE’, ‘ ‘) -> APPLE
RTRIM 오른쪽 지정 문자 삭제 RTRIM(‘APPLE  ‘, ‘ ‘) -> APPLE

4. 숫자 함수

- 숫자 데이터를 입력받아 처리하는 함수

종류 의미 예시
ROUND 지정한 자릿수로 반올림
ROUND(expr|column, n)
- n (양수) : 소수점 n자리로 반올림한다.
- n (음수) : 정수 자리에서 반올림한다.
ex) -1 : 일의 자리, -2 : 십의 자리  

ROUND(3.59, 1) -> 3.6
ROUND(5555.555, -1) -> 5560
TRUNC 지정한 자릿수로 버림
TRUNC(expr|column, n)
- n (양수) : 소수점 n자리로 반올림한다.
- n (음수) : 정수 자리에서 반올림한다.
ex) -1 : 일의 자리, -2 : 십의 자리  

TRUNC(3.59, 1) -> 3.5
TRUNC(5555.555, -1) -> 5550  
MOD 나머지 MOD(7, 2) -> 1
CEIL 지정한 값보다 큰 정수 CEIL(12.5) -> 13
FLOOR 지정한 값보다 작은 정수 FLOOR(12.5) -> 12

5. 날짜 함수

 - 날짜 데이터를 입력 받아 처리하는 함수

종류 의미 예시
SYSDATE 시스템의 현재 날짜와
시간을 반환
SYSDATE
MONTHS_BETWEEN 두 날짜 사이에 경과된
개월 수를 반환
MONTHS_BETWEEN(‘2000-10-01’, ‘2000-01-01’) -> 9
ADD_MONTHS 날짜에 개월 수를 더한
날짜를 반환
ADD_MONTHS(‘2000-01-01’, 5)
-> ‘2000-06-01’
ROUND 날짜를 반올림 ROUND(’00/01/01 16:30:30’)
-> ’00/01/02’
TRUNC 날짜를 절사 TRUNC(’00/01/01 16:30:30’)
-> ’00/01/01’

6. 데이터 타입 변환 함수

 - 데이터 타입을 변환하는 함수

종류 의미 예시
TO_CHAR 숫자 -> 문자
날짜 -> 문자
TO_CHAR(1234, '000000') -> '001234'
TO_CHAR(SYSDATE, ‘YYMMDD') -> ‘980315'
TO_NUMBER 문자 -> 숫자 TO_NUMBER(‘1000’) -> 1000
TO_DATE 문자 -> 날짜 TO_DATE(’08/10/01’, ‘YY/MM/DD’) -> ’08/10/01’

 1) TO_CHAR

   - 형식 : TO_CHAR(number|date, ‘format’)

     * format은 날짜/시간 형식과 숫자 형식으로 구분한다.

  ■ 날짜/시간 형식

종류 의미 결과 종류 의미 결과
YY 년도 2자리 20 DD  2자리 01
YYYY 년도 4자리 2020 DY 요일 1글자
Q 분기 1 (1-3) DAY 요일 전체 수요일
MM 2자리 01 HH / HH24 12/24 시각 1~12 / 0~23
MONTH 월 영어 JANUARY MI 0~59
MON 월 영어 3글자 JAN SS 0~59

 

   숫자 형식

종류 의미 예시 결과
9 숫자 한 자리 (1234, ‘999999’)    1234
0 숫자 한 자리 (1234, ‘000000’) 001234
$ 달러 표시 (1234, ‘$9999’) $1234
. 소수점 표시 (1234, ‘9999.99’)
(1234, ‘0000.00’)
1234.00
1234.00
, 천 단위 구분 기호 (1234, ‘9,999’)
(12345, ‘99,999’)
(123456, ‘999,999’)
1,234
12,345
123,456

 

'DB' 카테고리의 다른 글

[DB/MariaDB] WHERE 에 LIKE 여러개 사용하기  (2) 2023.01.10
[mariaDB] time_zone 확인 및 변경  (1) 2022.08.05
[DB/기본] 그룹함수  (0) 2020.12.30
[DB/기본] 트랜잭션  (0) 2020.12.28
[DB/기본] DML  (0) 2020.12.28
Comments