mysql date_add函数的type属性可以动态么?

DATE_ADD(now(),INTERVAL2DAY)这句话就是把当前时间添加2天,那么当DAY是动态的时候,应该怎么写?DATE_ADD(now(),INTERVAL... 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))
这样子会报错。。
似乎预处理可以解决,但是不会弄
求高手
展开
 我来答
匿名用户
2013-09-02
展开全部
DATE_ADD(now(),INTERVAL 2 (CASE lifeType WHEN 1 THEN DAY WHEN 2 THEN MONTH WHEN 3 THEN YEAR ELSE YEAR END)) 

尝试修改为:

CASE lifeType 
WHEN 1 THEN  DATE_ADD(now(),INTERVAL 2 DAY)
WHEN 2 THEN  DATE_ADD(now(),INTERVAL 2 MONTH)
WHEN 3 THEN  DATE_ADD(now(),INTERVAL 2 YEAR)
ELSE  DATE_ADD(now(),INTERVAL 2 YEAR)
END
软件第一美男
2013-09-02 · 超过16用户采纳过TA的回答
知道答主
回答量:37
采纳率:0%
帮助的人:27.8万
展开全部
两种办法:
1:如果你有项目使用数据库,那么建议在项目中就将这种数据处理好,不要让数据库做除读写之外的事情。
2:由于数据是动态的,必须要用变量了,楼主可是试一下触发器,或者存储过程都可以,触发器的思路就是当该字段发生改变的时候在这个字段上进行处理。存储过程就是在存储之前进行预处理。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式