Pet*_*ley 9

如果count是您要更新的唯一列(或者您没有在where子句中指定其他条件),那么您可以在where子句中执行此操作

UPDATE [Table] SET counts = counts - 1 WHERE counts > 0;
Run Code Online (Sandbox Code Playgroud)

但是,如果您要更新同一查询中的其他列,则无效.但你有选择

UPDATE [Table] SET counts = MAX(counts - 1, 0);
Run Code Online (Sandbox Code Playgroud)

要么

UPDATE [Table] SET counts = CASE WHEN counts > 0 THEN counts - 1 ELSE 0 END;
Run Code Online (Sandbox Code Playgroud)


Axe*_*ger 6

UPDATE tbl 
SET counts=counts-1 
WHERE counts > 0
Run Code Online (Sandbox Code Playgroud)