date_add和date_sub
语法为:date_add(date,interval expr type)、date_sub(date,interval expr type)
其中常用的type的类型有:second、minute、hour、day、month、year等
-- 获取日期 2020-04-07
curdate()
-- 获取日期加时间 2020-04-07 23:10:30
now()
-- 获取明天的日期 2020-04-08
date_add(curdate(),interval 1 day)
--或者
date_sub(curdate(),interval -1 day)
-- 获取明年的日期 2021-04-07
date_add(curdate(),interval 1 year)
-- 或者
date_sub(curdate(),interval -1 year)
日期的格式化
date_format(date,format)
| 格式 | 描述 |
| ---- | ------------- |
| %Y | 年,4 位 |
| %y | 年,2 位 |
| %m | 月,数值(00-12) |
| %M | 月名 |
| %D | 带有英文前缀的月中的天 |
| %d | 月的天,数值(00-31) |
| %H | 小时 (00-23) |
| %h | 小时 (01-12) |
| %i | 分钟,数值(00-59) |
| %S | 秒(00-59) |
| %s | 秒(00-59) |
-- 格式化当前日期 2020-04-07 23:23:23
date_format(now(),'%Y-%m-%d %H:%i:%s' )
-- 日期的差值
-- 当前时间2020-04-08,差值为-2
SELECT DATEDIFF(NOW(),'2020-04-10')
-- 当前时间2020-04-08,差值为2
SELECT DATEDIFF(NOW(),'2020-04-06')
-- 语法为:TIMESTAMPDIFF(interval,datetime_expr1,datetime_expr2)
常用的值有:
FRAC_SECOND 毫秒
SECOND 秒
MINUTE 分钟
HOUR 小时
DAY 天
WEEK 星期
MONTH 月
QUARTER 季度
YEAR 年
-- now()值为 2020-04-08 23:20:20
SELECT TIMESTAMPDIFF(DAY,NOW(),'2020-04-10 23:23:23')
-- 结果为2,相差两天,取整数