[데이터베이스] 숫자함수, 날짜함수_1

반응형

숫자함수 - 엑셀을 써봤다면 익숙한 함수들

round(반올림), trunc(버림), mod(나머지)


날짜함수

sysdate : 데이터베이스 서버의 날짜 및 시간 반환.

select sysdate from dual; 로 간단히 조회.

months_between(date1, date2) : date1이 date2보다 늦으면 양수, 빠르면 음수

add_months(date, n) : 날짜에 n만큼의 개월을 추가. 연수를 추가하는 건 없고 12개월로 계산하면 됨.

next_day(date,x) : 미국방식의 날짜 정하기. 우리나라에서 쓸 일이 있는지는 모르겠는데 특이해서 다뤄봄.

'오늘로부터 다가오는 x요일까지 마감을 해라.' 라는 뜻.

-> 가장 가까운 x요일을 출력.(오늘의 요일과 x요일이 같다면 다음주 n요일인 것)

1:일요일 2:월요일 ~~~ 7:토요일


참고로 날짜에도 round와 trunc를 적용할 수 있다.

ex. 현재 날짜를 2017년 12월 12일이라고 가정하자.

round(sysdate, 'month') -> 01-DEC-17

round(sysdate, 'year') -> 01-JAN-18

trunce(sysdate, 'month') ->  01-DEC-17

trunce(sysdate, 'year') -> 01-JAN-17

year을 기준으로 반올림하는 경우에 1~6월은 현재연도, 7~12월은 다음연도의 1월1일이 된다. month도 마찬가지로 생각하면 된다.


날짜함수로 한 번 더 정리!