我正在与一个网站打交道,人们可以在其中订购某些虚拟货币.我需要在数据库中放置订阅结束的日期.我的表格中有一个“到期”字段,它是DATE.
当用户扩展其订阅时,我需要在此日期之前增加1个月.但是,如果订阅已过期,我想将“过期”设置为从现在开始的1个月,而不是从订阅过期起的1个月.
我试过了:
UPDATE shop_user_rights SET expiration = ADDDATE(MAX(expiration,CURDATE()),INTERVAL 1 MONTH);
和
UPDATE shop_user_rights SET expiration = FROM_UNIXTIME(
MIN(
UNIX_TIMESTAMP(expiration),UNIX_TIMESTAMP(CURDATE())
)
),expiration = ADDDATE(expiration,INTERVAL 1 MONTH);
但是两者都给出语法错误.有一种方法可以在1个查询中执行此操作,还是我必须事先使用一些SELECT查询?
最佳答案
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。