如何在MySQL中执行此操作:if字段值>;0减去1,否则就让它成为

如何在MySQL中执行此操作:if字段值>;0减去1,否则就让它成为,mysql,sql-update,Mysql,Sql Update,如果count是您要更新的唯一列(或者,您没有在where子句中指定其他条件),那么您可以在where子句中执行此操作 UPDATE tbl SET counts=counts-1 WHERE counts > 0 但是,如果要更新同一查询中的其他列,这将不起作用。但你有选择 UPDATE [Table] SET counts = counts - 1 WHERE counts > 0; 或 感谢@Peter Bailey 这是带有WHERE选择器的示例 UPDATE [Ta

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

UPDATE tbl 
SET counts=counts-1 
WHERE counts > 0
但是,如果要更新同一查询中的其他列,这将不起作用。但你有选择

UPDATE [Table] SET counts = counts - 1 WHERE counts > 0;


感谢@Peter Bailey

这是带有WHERE选择器的示例

UPDATE [Table] SET counts = CASE WHEN counts > 0 THEN counts - 1 ELSE 0 END;
祝你好运

UPDATE [Table] SET counts = MAX(counts - 1, 0);
UPDATE [Table] SET counts = CASE WHEN counts > 0 THEN counts - 1 ELSE 0 END;
UPDATE [tbl_multimedia] SET [m_publish] = CASE WHEN [m_publish] = 0 THEN '1' ELSE '0' END WHERE id='1'