Mysql 条件更新查询
我有以下疑问Mysql 条件更新查询,mysql,sql,Mysql,Sql,我有以下疑问 UPDATE users_ SET equity=equity-100 WHERE account_id=1 只有当用户有足够的资金,即权益>=100时,才必须进行更新。 如何做到这一点?使用where子句: UPDATE users_ SET equity = equity - 100 WHERE account_id = 1 AND equity >= 100; 为了获得额外的保护,MySQL最终支持check约束。因此,在最新版本中,您可以执行以下操
UPDATE users_ SET equity=equity-100 WHERE account_id=1
只有当用户有足够的资金,即权益>=100时,才必须进行更新。
如何做到这一点?使用
where
子句:
UPDATE users_
SET equity = equity - 100
WHERE account_id = 1 AND equity >= 100;
为了获得额外的保护,MySQL最终支持check
约束。因此,在最新版本中,您可以执行以下操作:
alter table users_ add constraints chk_users_equity
check (equity >= 0);
这将不允许出现负值。实际上,如果equity
是一个整数,那么可以将其声明为无符号,并具有相同的效果