date_add 函数

MySQL的date_add和date_sub函数用于对日期增加或减少指定时间间隔,如YEAR_MONTH等复合单位。expr可以为正负数值,复合型单位需引号括起,未指定第二个值时默认按单一单位处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

mysql中内置函数date_add和date_sub能对指定的时间进行增加或减少一个指定的时间间隔,语法如下:

代码如下 复制代码DATE_ADD(date,INTERVAL expr type)DATE_SUB(date,INTERVAL expr type)

其中date是指定的日期,INTERVAL为关键词,expr是具体的时间间隔,type是时间单位。注意:type可以复合型的,比如YEAR_MONTH。如果type不是复合型的,DATE_ADD和DATE_SUB其实可以通用,因为expr可以为一个负数。可用的type如下表:MICROSECOND 间隔单位:毫秒SECOND 间隔单位:秒MINUTE 间隔单位:分钟HOUR 间隔单位:小时DAY 间隔单位:天WEEK 间隔单位:星期MONTH 间隔单位:月QUARTER 间隔单位:季度YEAR 间隔单位:年SECOND_MICROSECOND 复合型,间隔单位:秒、毫秒,expr可以用两个值来分别指定秒和毫秒MINUTE_MICROSECOND 复合型,间隔单位:分、毫秒MINUTE_SECOND 复合型,间隔单位:分、秒HOUR_MICROSECOND 复合型,间隔单位:小时、毫秒HOUR_SECOND 复合型,间隔单位:小时、秒HOUR_MINUTE 复合型,间隔单位:小时分DAY_MICROSECOND 复合型,间隔单位:天、毫秒DAY_SECOND 复合型,间隔单位:天、秒DAY_MINUTE 复合型,间隔单位:天、分DAY_HOUR 复合型,间隔单位:天、小时YEAR_MONTH 复合型,间隔单位:年、月对应复合型的type,需要使用引号对两个参数进行引用起来,中间用任何非数字字符作为间隔即可,并且不能使用负数。但是时间间隔只指定了一个值,那么也能正常工作,但是对应XXX_YYY使用的单位为YYY,也就相当于单一单位的type,同时可以使用负数。复合型的用法如下:

代码如下 复制代码mysql> select date_add('2013-01-18', interval '1 2' YEAR_MONTH);+-----------------------------------------------------+| date_add('2013-01-18', interval '1 2' YEAR_MONTH) |+-----------------------------------------------------+| 2014-03-18 |+-----------------------------------------------------+

mysql> select date_add('2013-01-18', interval '1-2' YEAR_MONTH);+----------------------------------------------------+| date_add('2013-01-18', interval '1-2' YEAR_MONTH) |+----------------------------------------------------+| 2014-03-18 |+----------------------------------------------------+

mysql> select date_add('2013-01-18', interval '1,2' YEAR_MONTH);+---------------------------------------------------+| date_add('2013-01-18', interval '1,2' YEAR_MONTH) |+---------------------------------------------------+| 2014-03-18 |+---------------------------------------------------+

mysql> select date_add('2013-01-18', interval 1 YEAR_MONTH);+-----------------------------------------------+| date_add('2013-01-18', interval 1 YEAR_MONTH) |+-----------------------------------------------+| 2013-02-18 |+-----------------------------------------------+

mysql> select date_add('2013-01-18', interval -1 YEAR_MONTH);+------------------------------------------------+| date_add('2013-01-18', interval -1 YEAR_MONTH) |+------------------------------------------------+| 2012-12-18 |+------------------------------------------------+

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秃头小福

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值