我有一个包含许多整数值的列。如何对其进行编码,以便每24小时将每个值减1,直到达到0?到目前为止,我已经理解了每24小时重复一次事件的代码,但却找不到从每个单独的值中减去一个事件的方法。谢谢!
SET GLOBAL event_scheduler = ON;
SELECT @@event_scheduler;
CREATE EVENT e_store_ts
ON SCHEDULE
EVERY 24 HOURS
DO
UPDATE users set value= '1';
答案 0 :(得分:0)
您可以使用case语句仅更新大于零的值
SET GLOBAL event_scheduler = ON;
SELECT @@event_scheduler;
CREATE EVENT e_store_ts
ON SCHEDULE
EVERY 24 HOURS
DO
UPDATE users SET `value`= CASE WHEN `value` > 0 THEN `value` - 1 ELSE `value` END;