请查看以下查询:
UPDATE `un_test`
SET `test_time` = DATE_ADD(`test_time`, INTERVAL 'test_minute' MINUTE)
WHERE deliver_at_user < NOW();
如果db time小于当前时间,则会增加5分钟。
现在,如果test_time
时间超过5分钟,执行此查询后,test_time
仍不符合条件。
我正在寻找的是,如果有任何快捷方式可以同时将test_minute
的多个test_time
字段添加到test_time
字段,以便它符合下一个可能更新的条件/ {{1}}有效时间?
我正在寻找SQL查询级别的解决方案,并且不想为此编写PHP脚本。
提前致谢。
答案 0 :(得分:1)
update un_test
set test_time = date_add(test_time, interval
cast(ceiling(timestampdiff(minute, test_time, now())/test_minute)
* test_minute as int) minute)
where deliver_at_user < now()
这应该或多或少有用。 :d
接下来的逻辑就是这个