MySQL | ADDDATE与DATE_ADD的区别

在自己连续几次忘记syntax必须要重新google,并且adddate, add_date, dateadd, date_add傻傻分不清之后,决定记录一下MySQL里ADDDATE, DATE_ADD这两个函数的相同与不同。

相同

ADDDATEDATE_ADD的基本syntax是一样的:

ADDDATE(@date, INTERVAL value unit)

例如:

ADDDATE(@date, INTERVAL 3 DAY)  #  add 3 days to @date
DATE_ADD(@date, INTERVAL -20 MINUTE) # subtract 20 minutes to @date

其中,可选的时间单位非常多,从MICROSECOND, SECOND, 到MONTH, QUARTER, YEAR都可以接受。甚至复合的时间单位,如HOUR_MINUTE, DAY_HOUR, YEAR_MONTH也可以,例如:

ADDDATE(@date, INTERVAL '1-2' YEAR_MONTH)

不同

两个函数的不同之处在于,当只进行以日为单位的日期加减时,ADDDATE有一个简写的使用方法,而DATE_ADD没有:

ADDDATE(@date, 1) # add one day to @date

总结

因此,为了避免混淆,在实际使用中建议只用ADDDATE这个函数,因为它的功能和DATE_ADD相同,并且支持以日为单位的缩写。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值