MySql

mysql 一个时间字段加上一个int 字段 DATE_AD

2022-06-07  本文已影响0人  Rinaloving

需求: 到期前多少天发送一个通知,其中到期时间一个字段,前几天(动态)通知一个字段,需要一条sql查出来

物品到期.png
核心:
DATE_ADD(NOW(),INTERVAL CONVERT(nTips,UNSIGNED INTEGER) DAY)
说明:
函数 date_add(日期,interval 1 day);  // 日期添加一天
函数 CONVERT(字段,UNSIGNED INTEGER)  // 字段转化为int类型
示例:
SELECT sName,tGoodsValidity,nTips FROM `TbGoods` WHERE DATE_FORMAT(tGoodsValidity,'%Y-%m-%d') =  DATE_FORMAT(DATE_ADD(NOW(),INTERVAL CONVERT(nTips,UNSIGNED INTEGER) DAY),'%Y-%m-%d')
查询结果.png
补充:

如果是时间往前推

DATE_ADD(NOW(),INTERVAL -CONVERT(nTips,UNSIGNED INTEGER) DAY)

定义和用法
DATE_ADD() 函数向日期添加指定的时间间隔。

语法

DATE_ADD(date,INTERVAL expr type)

date 参数是合法的日期表达式。expr 参数是您希望添加的时间间隔。

type 参数可以是下列值:

Type 值 备注
MICROSECOND
SECOND
MINUTE
HOUR
DAY
WEEK
MONTH
QUARTER
YEAR
SECOND_MICROSECOND
MINUTE_MICROSECOND
MINUTE_SECOND
HOUR_MICROSECOND
HOUR_SECOND
HOUR_MINUTE
DAY_MICROSECOND
DAY_SECOND
DAY_MINUTE
DAY_HOUR
YEAR_MONTH
上一篇下一篇

猜你喜欢

热点阅读