为了账号安全,请及时绑定邮箱和手机立即绑定

关于mysql date_add函数的type属性可以动态么?该怎么操作?

关于mysql date_add函数的type属性可以动态么?该怎么操作?

慕森卡 2021-07-20 20:15:39
DATE_ADD(now(),INTERVAL 2 DAY) 这句话就是把当前时间添加2天,那么当DAY是动态的时候,应该怎么写?DATE_ADD(now(),INTERVAL 2 (CASE lifeType WHEN 1 THEN DAY WHEN 2 THEN MONTH WHEN 3 THEN YEAR ELSE YEAR END)) 这样子会报错。似乎预处理可以解决,但是不会弄求高手
查看完整描述

2 回答

?
不负相思意

TA贡献1777条经验 获得超10个赞

DATE_ADD(now(),INTERVAL 2 (CASE lifeType WHEN THEN DAY WHEN THEN MONTH WHEN THEN YEAR ELSE YEAR END))  尝试修改为: CASE lifeType     WHEN THEN  DATE_ADD(now(),INTERVAL 2 DAY)    WHEN THEN  DATE_ADD(now(),INTERVAL 2 MONTH)    WHEN THEN  DATE_ADD(now(),INTERVAL 2 YEAR)    ELSE  DATE_ADD(now(),INTERVAL 2 YEAR)END

查看完整回答
反对 回复 2021-07-25
?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

两种办法:
1:如果你有项目使用数据库,那么建议在项目中就将这种数据处理好,不要让数据库做除读写之外的事情。
2:由于数据是动态的,必须要用变量了,楼主可是试一下触发器,或者存储过程都可以,触发器的思路就是当该字段发生改变的时候在这个字段上进行处理。存储过程就是在存储之前进行预处理。

查看完整回答
反对 回复 2021-07-25
  • 2 回答
  • 0 关注
  • 410 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信