본문 바로가기
DATABASE/ORACLE

[Oracle] SQL 날짜 함수

날짜 함수







SYSDATE : 현재 날짜 반환하는 함수


1
2
3
4
5
SQL> SELECT SYSDATE FROM DUAL;
 
SYSDATE
--------
18/04/19
cs




날짜 연산 : 날짜 형 데이터에 숫자를 더하면 (날짜 + 숫자) 그 날짜로 부터 그 기간만큼 지난 날짜를 계산


1
2
3
4
5
SQL> SELECT SYSDATE-1 어제, SYSDATE 오늘, SYSDATE+1 내일  FROM DUAL;
 
어제     오늘     내일
-------- -------- --------
18/04/18 18/04/19 18/04/20
cs


ROUND 함수를 사용하여 반올림 할 수도 있다

( 포스팅 날짜 : 4월 19일, 반올림 하였다.)

1
2
3
4
5
SQL> SELECT SYSDATE, ROUND(SYSDATE, 'MONTH'FROM DUAL;
 
SYSDATE  ROUND(SY
-------- --------
18/04/19 18/05/01
cs



TRUNC 함수를 사용하여 날짜를 잘라 낼 수도 있다.


1
2
3
4
5
SQL> SELECT SYSDATE, TRUNC(SYSDATE, 'MONTH'FROM DUAL;
 
SYSDATE  TRUNC(SY
-------- --------
18/04/19 18/04/01
cs




MONTHS_BETWEEN : 날짜와 날짜 사이의 개월 수를 구해주는 함수

형식 : MONTH_BETWEEN(date1, date2)


ADD_MONTHS : 특정 개월 수를 더한 날짜를 구하는 함수

형식 : ADD_MONTHS(date, number)


NEXT_DAY : 해당 날짜를 기준으로 최초로 도래하는 요일의 날짜를 반환

형식 : NEXT_DAY(date, 요일)


LAST_DAY : 해당 날짜가 속한 달의 마지막 날짜를 반환 하는 함수







형 변환 함수


구분 

설명 

TO_CHAR 

날짜형 혹은 숫자형을 문자형으로 변환 

TO_DATE 

문자형을 날짜형으로 변환한다 

TO_NUMBER 

문자형을 숫자형으로 변환한다 



TO_CHAR(날짜 데이터,'출력형식')


종류 

의미 

YYYY 

년도 표현 (4자리) 

YY 

년도 표현 (2자리) 

MM 

월을 숫자로 표현 

MON 

월을 알파벳으로 표현 

DAY 

요일 표현 

DY 

요일을 약어로 표현 



1
2
3
4
5
SQL> SELECT SYSDATE, TO_CHAR(SYSDATE,'YYYY-MM-DD'FROM DUAL;
 
SYSDATE  TO_CHAR(SY
-------- ----------
18/04/19 2018-04-19
cs


시간 출력 형식


종류 

의미 

AM / PM 

오전, 오후 시각 표시

A.M / P.M 

오전( A.M) , 오후 ( P. M ) 시각 표시 

HH / HH12 

시간( 1~ 12 ) 

HH24 

24시간으로 표현 ( 0 ~ 23 ) 

MI 

분 표현 

SS 

초 표현 


1
2
3
4
5
SQL> SELECT TO_CHAR(SYSDATE,'YYYY/MM/DD,HH24:MI:SS'FROM DUAL;
 
TO_CHAR(SYSDATE,'YY
-------------------
2018/04/19,16:49:17
cs


숫자형을 문자형으로 변환하기


구분 

설명 

0 

자릿수를 나타내며 자릿수가 맞지 않을 경우 0으로 채운다

9 

자릿수를 나타내며 자릿수가 맞지 않아도 채우지 않는다

L

각 지역별 통화 기호를 앞에 표시한다 

. 

소수점 

, 

천 단위 자리 구분 


예 : SELECT ENAEM, SAL, TO_CHAR(SAL,'L999,999') FROM EMP;


L -> \로 표시 되고, 9 때문에 자리수가 달라도 0으로 채우지 않고 칸을 맞춰준다.



'DATABASE > ORACLE' 카테고리의 다른 글

[Oracle] SQL 그룹 함수 집계 데이터  (0) 2018.04.20
[Oracle] SQL 조건식  (0) 2018.04.20
[Oracle] SQL 문자 함수  (0) 2018.04.19
[Oracle] SQL 숫자 함수  (0) 2018.04.19
[Oracle] SQL LIKE / SORT  (0) 2018.04.19