add, sub - date, time

정하윤·2023년 2월 28일
0

adddate, date_add

  • 입력 한 날짜에 대해서 작성한 간격만큼의 이후 날짜를 계산해주는 함수

SELECT current_date() today,adddate(current_date(), INTERVAL 50 DAY) day,adddate(current_date(), INTERVAL 20 MONTH) month,date_add(current_date(), INTERVAL 100 YEAR) year;


today     |day       |month     |year      |

  • ---------+----------+----------+----------+

2023-02-28|2023-04-19|2024-10-28|2123-02-28|

subdate, date_sub

  • 입력한 날짜에 대해서 작성한 간격만큼 이전 날짜를 계산해주는 함수

SELECT current_date() today,subdate(current_date(), INTERVAL 50 DAY) day,subdate(current_date(), INTERVAL 20 MONTH) month,date_sub(current_date(), INTERVAL 100 YEAR) year;


today     |day       |month     |year      |

  • ---------+----------+----------+----------+

2023-02-28|2023-01-09|2021-06-28|1923-02-28|

SELECT last_name, hire_date,adddate(hire_date, INTERVAL 6 MONTH) AS "입사 6개월 후",subdate(hire_date, INTERVAL 7 DAY) AS "입사 7일 전"FROM employeesWHERE department_id = 60;


last_name|hire_date |입사 6개월 후  |입사 7일 전   |

  • --------+----------+----------+----------+

Hunold   |1990-01-03|1990-07-03|1989-12-27|

Ernst    |1991-05-21|1991-11-21|1991-05-14|

Austin   |1997-06-25|1997-12-25|1997-06-18|

Pataballa|1998-02-05|1998-08-05|1998-01-29|

addtime / subtime

  • 입력된 날짜 또는 시간데이터에서 입력한 크기의 시간을 더하거나 빼는 연산을 수행하는 함수

SELECT addtime(now(), '3:0:10'), addtime(current_time(), '1:40:10');


addtime(now(), '3:0:10')|addtime(current_time(), '1:40:10')|

  • -----------------------+----------------------------------+

2023-02-28 18:30:41|                          17:10:41|

SELECT subtime(now(), '3:0:10'), subtime(current_time(), '1:40:10');


subtime(now(), '3:0:10')|subtime(current_time(), '1:40:10')|

  • -----------------------+----------------------------------+

2023-02-28 12:30:26|                          13:50:26|

0개의 댓글