담비의 개발블로그

국비지원교육 43일차(9주차&DB) 본문

국비교육

국비지원교육 43일차(9주차&DB)

담비12 2024. 1. 12. 10:41

TRIM, LTRIM, RTRIM(특정문자를 지우는 함수)

- 원본 문자열 데이터를 제외한 나머지 데이터는 모두 생략할 수 있다. 삭제할 문자가 생략될 경우에 기본적으로 공백을 제거한다. 왼쪽에 있는 글자를 지우는LTRIM, 오른쪽에 있는 글자를 지우는 RTRIM, 양쪽의 글자를 지우는 BOTH를 사용한다. 

TRIM([삭제 옵션(선택] [삭제할 문자(선택)] FROM [원본 문자열 데이터(필수)])

LTRIM([원본 문자열 데이터(필수)], [삭제할  문자 집합(선택)])

RTRIM([원본 문자열 데이터(필수)], [삭제할  문자 집합(선택)])

삭제할 문자가 없다면 공백이 제거된다.

 

 

ROUND(반올림 함수)

- 특정 숫자를 반올림한 결과를 출력하는데 사용한다. 반올림 위치를 지정하지 않으면 소수점 첫번째 자리에서 반올림을 한다.

ROUND([숫자(필수)], [반올림 위치(선택)])

 

TRUNC(버림 함수)
- 특정 위치에서 숫자를 버림한 결과를 출력하는 데 사용한다. 버림위치를 지정하지 않을 경우 소수점 첫 번째 자리에서 버림이 된다.

TRUNC([숫자(필수)], [버림 위치(선택)])

 

CEIL, FLOOR (지정한 숫자와 가까운 정수를 찾는 함수)

- 각각 입력된 숫자와 가까운 큰 정수, 작은 정수를 반환하는 함수이다.

CEIL([숫자(필수)])

FLOOR([숫자(필수)])

 

MOD(숫자를 나눈 나머지 값을 구하는 함수)

- 특정 숫자를 나누고 그 나머지를 출력하는 함수이다.

MOD([나눗셈 될 숫자(필수)], [나눌 숫자(필수)])

 


날짜 함수
연산 설명
날짜 데이터 + 숫자 날짜 데이터보다 숫자만큼 일수 이후의 날짜
날짜 데이터 - 숫자 날짜 데이터보다 숫자만큼 일수 이전의 날짜
날짜 데이터 - 날짜 데이터 두 날짜 데이터 간의 일수 차이
날짜 데이터+ 날짜 데이터 연산 불가, 지원하지 않음

 

SYSDATE

- 별다른 입력 데이터 없이, 오라클 데이터베이스 서버가 놓인 OS의 현재 날짜와 시간을 보여준다.

 

ADD_MONTHS(몇 개월 이후 날짜를 구하는 함수)

- 특정 날짜에 지정한 개월 수 이후 날짜 데이터를 반환하는 함수이다.

ADD_MONTHS([날짜 데이터(필수), [더할 개월 수 (정수) (필수)])

 

MONTHS_BETWEEN(두 날짜 간의 개월 수 차이를 구하는 함수)

- 두 날짜 데이터 간의 날짜 차이를 개월 수로 계산하여 출력한다.

MONTHS_BETWEEN([날짜 데이터1(필수)], [날짜 데이터2(필수)])

 

NEXT_DAY, LAST_DAY(돌아오는 요일, 달의 마지막 날짜를 구하는 함수)

NEXT_DAY : 특정 날짜를 기준으로 돌아오는 요일의 날짜를 출력해 주는 함수이다.

NEXT_DAY([날짜 데이터(필수)], [요일 문자(필수)])

LAST_DAY : 특정 날짜가 속한 달의 마지막 날짜를 출력해 주는 함수이다.

LAST_DAY ([날짜 데이터(필수)])

 

ROUND, TRUNC(날짜의 반올림, 버림을 하는 함수)

입력 데이터 종류 사용방식
숫자 데이터 ROUND([숫자(필수)], [반올림 위치])
TRUNC ([숫자(필수)], [버림 위치])
날짜 데이터 ROUND([날짜데이터(필수)], [반올림 기준 포맷])
TRUNC ([날짜데이터 (필수)], [버림 기준 포맷])

 

오라클에서 날짜 데이터를 사용할 때 기준 포맷 값

포맷 모델 기준 단위
SYYYY, YYYY, YEAR, SYEAR, YYY, YY, Y 날짜 데이터의 해당 연,월, 일의 7월 1일을 기준
(2016년 7월 1일 일 경우, 2017년으로 처리)
MONTH, MON, MM, RM 각 달의 기준
DDD, DD, J 해당 일의 정오를 기준
HH, HH12, HH24 해당일의 시간을 기준
MI 해당일 시간의 분을 기준

 


 

TO_CHAR(날짜, 숫자 데이터를 문자 데이터로 변환하는 TO_CHAR함수)

- 날짜 데이터를 원하는 형태의 문자열로 출력한다.

TO_CHAR([날짜데이터(필수)], '[출력되길 원하는 문자 형태(필수)]')

- 특정 언어에 맞춰서 날짜 출력하기

>> TO_CHAR([날짜데이터(필수)], '[출력되길 원하는 문자 형태(필수)]', 'NLS_DATE_LANGUAGE = language'(선택) )

 

TO_NUMBER(문자 데이터를 숫자 데이터로 변환하는 함수)

- 문자열을 지정한 형태의 숫자로 인식하여 숫자 데이터로 변환한다.TO_NUMBER('[문자열 데이터(필수)]', '[인식될 숫자형태(필수)]')

 

TO_DATE(문자 데이터를 날짜 데이터로 변환하는 함수)

- 문자열 데이터를 날짜형의 데이터로 변환한다.TO_DATE('[문자열 데이터(필수)]', '[인식될 날짜형태(필수)]')

 

 

NVL

- 열 또는 데이터를 입력하여 해당 데이터가 NULL이 아닐 경우 데이터를 그대로 반환하고, NULL인 경우 지정한 데이터를 반환한다.

NVL([NULL인지 여부를 검사할 데이터 또는 열(필수)], [앞의 데이터가 NULL일 경우 반환할 데이터(필수)])

 

NVL2

- 열 또는 데이터를 입력하여 해당 데이터가 NULL이 아닐 때와 NULL일 때 출력 데이터를 각각 지정한다.

NVL([NULL인지 여부를 검사할 데이터 또는 열(필수)],

       [앞의 데이터가 NULL이 아닐 경우 반환할 데이터 또는 계산식(필수)],

       [앞의 데이터가 NULL인 경우 반환할 데이터 또는 계산식(필수)] )

 

 

DECODE

- 기준이 되는 데이터를 먼저 지정한 후 해당 데이터 값에 따라 다른 결과 값을 내보내주는 함수이다.

DECODE([검사 대상이 될 열 또는 데이터, 연산이나 함수의 결과],

[조건1], [데이터가 조건1과 일치할 때 반환할 결과],

[조건2], [데이터가 조건2와 일치할 때 반환할 결과],

.

.

.

[조건N], [데이터가 조건N과 일치할 때 반환할 결과],

[위 조건1~조건N과 일치한 경우가 없을 때 반환할 결과])

 

결과값은 모두 데이터값이 같아야 한다. 문자열이면 문자열로 통일되어야하고, 숫자열이면 숫자열로 통일되어야 한다.

 

CASE

- DECODE함수와 마찬가지로 특정 조건에 따라 반환할 데이터를 설정할 때 사용한다.

CASE[ 검사 대상이 될 열 또는 데이터, 연산이나 함수의 결과 ]

WHEN [조건1] THEN [데이터가 조건1과 일치할 때 반환할 결과]

WHEN [조건2] THEN  [데이터가 조건2와 일치할 때 반환할 결과]

.

.

.

WHEN [조건N] THEN [데이터가 조건N과 일치할 때 반환할 결과]

ELSE [위 조건1~조건N과 일치한 경우가 없을 때 반환할 결과]

END

 

DECODE와 마찬가지로, 결과값은 모두 데이터값이 같아야 한다. 문자열이면 문자열로 통일되어야하고, 숫자열이면 숫자열로 통일되어야 한다.