본문으로 바로가기

mysql 특정 날짜로부터 경과된 후의 날짜 값을 구하는 방법에 대해서 설명하고자한다.

이때 알아야할 명령어로


첫번 째, 날짜를 감산할 때 사용하는 메소드로는 DATE_SUB를 사용

두번 째, 현재 날짜 값 가져오기위해 NOW() 사용

세번 째, 얼만큼의 날짜를 계산할지, 날짜 형식 등을 정할 때는 INTERVAL을 사용한다


더 쉽게 이해하기 위해 다음 예시를 참고하자!


예를 들어,  현재 날짜에서 하루 전을 계산 할 경우 다음과 같다.

DATE_SUB(now(), INTERVAL 1 DAY)

                      현재         하루 뒤


이와 같이 1달뒤면 1 MONTH, 1년 뒤면 1 YEAR을 입력하면 간단하게 날짜를 구할 수 있다.


SECOND - 초 추가 (INTERVAL 1 SECOND)

MINUTE - 분 추가 (INTERVAL 1 MINUTE)

HOUR - 시 추가 (INTERVAL 1 HOUR)

DAY - 일 추가 (INTERVAL 1 DAY)

MONTH - 달 추가 (INTERVAL 1 MONTH)

YEAR - 년 추가 (INTERVAL 1 YEAR)

MINUTE_SECOND - 분과 초 추가 (INTERVAL "1:1" MINUTE_SECOND)

HOUR_MINUTE - 시간과 분 추가 (INTERVAL "1:1" HOUR_MINUTE)

YEAR_MONTH - 년과 월 추가 (INTERVAL "1-1" YEAR_MONTH)

HOUR_SECOND - 시간과 분, 초 추가 (INTERVAL "1:1:1" HOUR_SECOND)

DAY_MINUTE - 일과 시간, 분 추가 (INTERVAL "1 1:1" DAY_MINUTE)

DAY_SECOND - 일과 시간, 분, 초 추가 (INTERVAL "1 1:1:1" DAY_SECOND)


차를 구하고싶다면

Select date_sub("날짜", interval "1 1:1:1" day_second) 이런식으로...


따라서 다시 위에서 예시를 보면

DATE_SUB(now(), INTERVAL 1 DAY)

                      날짜     를 써서 하루 전으로 계산된다


참고 사이트 : http://blog.naver.com/yongun24?Redirect=Log&logNo=10082709956