我有一个类似的查询:如何从最小结果为零的MySQL字段中减去?
UPDATE mytable SET count = count - 2
数字二是可变的。字段count可能永远不会小于零。
我该怎么做?
我有一个类似的查询:如何从最小结果为零的MySQL字段中减去?
UPDATE mytable SET count = count - 2
数字二是可变的。字段count可能永远不会小于零。
我该怎么做?
使用case
表达:
UPDATE mytable SET count = case when count >= 2 then count - 2 else 0 end
ANSI SQL标准,即它会与任何基本DBMS产品执行!
您可以使用此:
UPDATE mytable SET count = GREATEST(0, count - 2);
我更喜欢这个。它让我感觉更具可读性,并且具有更少的故障点,尤其是考虑到2是一个变量。 – Arth
谢谢!有用。 – Z0q