오라클/SQL

sql 단일행 함수 - 날짜 함수

김포춘 2014. 9. 30. 14:30
반응형

1. SYSDATE 함수

현재 시스템의 시간을 출력해 주는 함수

SELECT SYSDATE FROM dual ;      미국 기준으로 시간이 출력됨

alter session set NLS_DATE_FORMAT='YYYY-MM-DD:HH24:MI:SS'; 해주면 한국에서 익숙하게 표기


2. MONTHS_BETWEEN 함수

두 날짜를 입력 받아서 두 날짜 사이의 개월 수를 출력하는 함수

SELECT MONTHS_BETWEEN('14/05/31','14/04/30')

FROM dual;

= 1

1) 두 날짜 중 큰 날짜를 먼저 써야 양수가 나옴

2) 두 날짜가 같은 달에 속해 있으면 특정 규칙으로 계산된 값이 나옴

※ 윤달을 구분하지 못함, 리눅스에서 사용할 때는 NLS_DATE_FORMAT 을 이용해 날짜 형태 변경


3. ADD_MONTHS 함수

주어진 날짜에 숫자만큼의 달을 추가 하는 함수

- SYSDATYE,ADD_MONTHS(SYSDATE,1)

FROM dual ;

SYSDATE   ADD_MONT

--------  ----------

14/05/26     14/06/26


4. NEXT_DAY  함수

주어진 날짜를 기준으로 돌아오는 가장 최근 요일의 날짜를 반환해주는 함수

SELECT SYSDATE , NEXT_DAY(SYSDATE,'MON') NEXT_DAY

FROM dual ;

SYSDATE           NEXT_DAY

---------        ---------

28-APR-11        02-MAY-11


5. LAST_DAY 함수

주어진 날짜가 속한 달의 가장 마지막 날을 출력해주는 함수

SELECT SYSDATE , LAST_DAY(SYSDATE) "LAST_DAY"

FROM dual ;

SYSDATE        LAST_DAY

--------       ---------

28-APR-11     30-APR-11

6. 날짜의 ROUND, TRUNC 함수

ROUND - 하루의 절반에 해당 되는 낮 12:00 를 기준으로 12:00 지나면 다음 날짜로 출력 이 시간이 안될 경우 당일로 출력

TRUNC - 무조건 당일 출력

반응형

'오라클 > SQL' 카테고리의 다른 글

복수행 함수 (그룹 함수)  (1) 2014.10.08
sql 단일행 함수 - 정규식  (2) 2014.10.01
sql 단일행 함수 - 일반 함수  (0) 2014.09.30
sql 단일행 함수 - 형 변환 함수  (1) 2014.09.30
sql 단일행 함수 - 숫자함수  (0) 2014.09.30
sql 단일행 함수 - 문자함수  (3) 2014.09.29
sql select문  (0) 2014.09.29