MySQL中的日期函数
DATE_ADD
DATE_ADD(date,INTERVAL expr unit) 是加时间函数
date 是起始日期
unit 是需要加时间格式可以是day或者month或者year
adddate()和date_add用法一致
例如:
select date_add('2022-10-23',interval 5 day)
-- 2022-10-28
DATE_SUB
DATE_SUB(date,INTERVAL expr unit)是减时间函数
date 是起始日期
unit 是需要减时间格式可以是day或者month或者year
subdate()和date_sub 的用法一致
列如:
select date_sub('2022-10-23',interval 5 day);
-- 2022-10-18
DATE_FORMAT
DATE_FORMAT(date,format)是时间格式变化函数
date 是需要变化格式的时间
format 是想要变的格式
例如:
select date_format('2022-10-23','%Y-%m')
-- 2022-10
PS:
MySQL中的时间间隔的类型有一下几种
类型(type值) | 含义 | expr表达形式 |
---|---|---|
year | 年 | YY |
month | 月 | MM |
day | 日 | DD |
hour | 时 | hh |
minute | 分 | mm |
second | 秒 | ss |
year_month | 年和月 | YY和MM用任意符号隔开 |
day_hour | 天和时 | DD和hh用任意符号隔开 |
day_minute | 天和分 | DD和mm用任意符号隔开 |
dar_second | 天和秒 | DD和ss用任意符号隔开 |
hour_minute | 时和分 | hh和mm用任意符号隔开 |
hourt_second | 时和秒 | hh和ss用任意符号隔开 |
例如:
select date_add('2022-10-23',interval '11 9' YEAR_MONTH);
-- 2034-07-23 在2022-10-23基础上加11年9月
select date_sub('2022-10-23',interval '11 9' YEAR_MONTH);
-- 2011-01-23 在2022-10-23基础上减11年9月