Database

[MySQL] 날짜/시간 연산 (어제 날짜 구하기)

비번변경 2022. 10. 25. 23:16

개요

MySQL에서 오늘의 날짜를 구하는 방법은 2022.06.15 - [MySQL] NOW, DATE_FORMAT에서 정리했었다. 그렇다면 어제 날짜는 어떻게 구할 수 있을까?

 

DATE_ADD, DATE_SUB 함수를 사용하는 방법을 정리해둔다.

 

 

DATE_ADD

DATE_ADD() 함수는 날짜에 시간/날짜 간격을 추가한 날짜를 반환한다.

DATE_ADD(date, INTERVAL value addunit)
-- date : 변경할 날짜값.
-- value : 더할 시간/날짜 간격. 음수/양수 모두 사용할 수 있다.
-- addunit : 더할 시간/날짜 간격의 단위

addunit의 아래와 같은 값을 사용할 수 있다.

MICROSECOND
SECOND
MINUTE
HOUR
DAY
WEEK
MONTH
QUARTER
YEAR
SECOND_MICROSECOND
MINUTE_MICROSECOND
MINUTE_SECOND
HOUR_MICROSECOND
HOUR_SECOND
HOUR_MINUTE
DAY_MICROSECOND
DAY_SECOND
DAY_MINUTE
DAY_HOUR
YEAR_MONTH

 

예시 )

DATE_ADD 함수를 이용해 어제 날짜를 구하는 예시는 아래와 같다.

SELECT 
  date_add(now(), INTERVAL -1 DAY);

DATE_ADD

 

 

DATE_SUB

DATE_SUB 함수는 날짜에 시간/날짜 간격을 뺀 날짜를 반환한다.

DATE_SUB(date, INTERVAL value addunit)
-- date : 변경할 날짜값.
-- value : 더할 시간/날짜 간격. 음수/양수 모두 사용할 수 있다.
-- addunit : 더할 시간/날짜 간격의 단위

 

예시 )

DATE_SUB 함수를 이용해 어제 날짜를 구하는 예시는 아래와 같다.

SELECT 
  date_sub(now(), INTERVAL 1 DAY);

DATE_SUB

 

 

참고 문서

https://www.w3schools.com/mysql/func_mysql_date_add.asp

https://www.w3schools.com/mysql/func_mysql_date_sub.asp

mysql-한달전-하루전-한시간전