데이터베이스

[MySQL] DATE 관련 함수

동띠기 2020. 8. 31. 16:06
728x90

1. 연도 / 월 / 일자 추출하기

 

연도 추출 ( year 함수 )

예 ) SELECT * FROM member WHERE YEAR(birthday) = '1991';

 

월 추출

예 ) SELECT * FROM member WHERE MONTH(sing_day) IN (5, 6, 7);

 

일 추출

예 ) SELECT * FROM member WHERE DAYOFMONTH(sing_day) BETWEEN 15 AND 31;

 

2. 날짜 간의 차이 구하기 ( DATEDIFF 함수 사용 )

 

DATEDIFF(날짜 a, 날짜 b)를 사용하면 '날짜 a - 날짜 b'를 해서 그 차이 일수를 알려줍니다.

예를 들어, DATEDIFF(’2018-01-05’, ’2018-01-03’)의 값은 2입니다.

 

예 ) SELECT email, sign_day, DATEDIFF(sign_day, '2019-01-01') FROM member;

 

오늘 날짜를 구하는 함수 ( CURDATE() )

예 ) SELECT email, sign_day, CURDATE(), DATEDIFF(sign_day, CURDATE()) FROM member;

 

3. 날짜 더하기 빼기 

DATE_ADD() / DATE_SUB()

 

예 ) SELECT email, sign_day, DATE_ADD(sign_up_day, INTERVAL 300 DAY) FROM member; // 300일 후

      SELECT email, sign_day, DATE_SUB(sign_up_day, INTERVAL 250 DAY) FROM member; // 250일 전

 

 

 

더 많은 날짜, 시간 관련 함수 : https://dev.mysql.com/doc/refman/8.0/en/date-and-time-functions.html

728x90