
| 함수 | 설명 |
|---|
| ADDDATE | 날짜를 기준으로 차이를 더한 날짜를 구한다. |
| SUBDATE | 날짜를 기준으로 차이를 뺀 날짜를 구한다. |
| ADDTIME | 날짜/시간을 기준으로 시간을 더한 결과를 반환한다. |
| SUBTIME | 날짜/시간을 기준으로 시간을 뺀 결과를 반환한다. |
| YEAR / MONTH/ DAYOFMONTH/ HOUR/ MINUTE/ SECOND/ MICROSECOND | 특정 날짜나 시간에 대한 연, 월, 일, 시, 분, 초, 밀리초를 반환한다. |
| DATE / TIME | DATE는 '연-월-일', TIME은 '시:분:초'를 반환한다. |
| DATEDIFF / TIMEDIFF | 날짜2에서 날짜1까지 몇 일/ 몇 시간 남았는지를 반환한다. |
| DAYOFWEEK / MONTHNAME / DAYOFYEAR | DAYOFWEEK는 요일을(월:2 화:3), MONTHNAME은 해당 월의 영어이름, DAYOFYEAR는 1년 중 몇일이 지났는지를 반환한다. |
| LAST_DAY | LAST_DAY는 주어진 월의 마지막날을 반환한다. |
| TIME_TO_SEC | TIME_TO_SEC은 시간을 초 단위로 구한다. |
# 날짜 함수
SELECT ADDDATE('2024-10-14', INTERVAL 7 DAY ); # 일주일 뒤를 색인하고싶다면?
SELECT ADDDATE('2024-10-14', INTERVAL 1 MONTH ); # 한달 후
SELECT SUBDATE('2024-10-14', INTERVAL 7 DAY ); # 일주일 전
SELECT ADDTIME('2024-10-14 12:49:00', '1:10:30' ); # 시간 후 ~
SELECT subTIME('2024-10-14 12:49:00', '1:10:30' ); # 시간 전 ~
# 년 월 일 시 분 초 마이크로초 따로 출력
SELECT NOW(); # 현재 시간
select YEAR(NOW()),MONTH(NOW()),DAYOFMONTH(NOW());
select hour(NOW()),second(NOW()),microsecond(NOW());
SELECT DATE(NOW()), TIME(NOW()); # 연월일 따로 시분초 따로 쓰고싶다면
# 남은 일, 시간 계산
SELECT datediff('2024-10-14','2024-11-19'),
TIMEDIFF('12:55:00','13:20:00');
# 요일 출력 # 일요일 = 1, 월 =2 ...
SELECT DAYOFWEEK(NOW()), dayname(NOW()), # 숫자 보기 힘듦.. 영어로 표기하려면
MONTHNAME(NOW()),dayofyear(NOW()); # 올해 지난 일수..;