0

我有一张桌子。一列是INT UNSIGNED,因此不能小于零。我想减去一个数字,但如果数字已经大于该值,我想将其设置为零。

我怎样才能做到这一点?

UPDATE table SET **column = greatest(column-number,0)** WHERE customer_id=? 

没有成功,但在number<0(添加值)时起作用。

4

1 回答 1

1

我会尝试类似的东西:

 UPDATE table SET column = IF(column>number,column-number,0) WHERE customer_id=?;
于 2013-11-06T07:35:56.150 回答