UPDATE users SET items=items-10000;
问题是一些用户没有 10000 项要扣除,我得到了超出范围的错误。如果用户没有 10000 个项目,如何调整查询,项目将设置为 0?
UPDATE users SET items=items-10000;
问题是一些用户没有 10000 项要扣除,我得到了超出范围的错误。如果用户没有 10000 个项目,如何调整查询,项目将设置为 0?
您可以使用以下CASE
语句执行此操作:
UPDATE users
SET items=CASE
WHEN items-10000 < 0
THEN 0
ELSE items-10000
END;
或者,GREATEST()
:
UPDATE users SET items=GREATEST(items-10000, 0);