选择....用于更新和if语句与PHP

时间:2012-01-20 03:28:46

标签: php mysql sql innodb

好的,我现在拥有的是:

START TRANSACTION;
SELECT redeemTicketChances FROM userRedeemChances WHERE userId='917' FOR UPDATE;
UPDATE userRedeemChances SET `redeemTicketChances` = redeemTicketChances - 1;
COMMIT;

我想知道的是,如果redeemTicketChances是0.如果它是0,我不想从中减去1。我还希望它返回到php,无论它是否成功减去1或者redeemTicketChances已经为0。

我对这样的高级sql并不擅长,所以我不确定该怎么做。

1 个答案:

答案 0 :(得分:4)

UPDATE userRedeemChances SET `redeemTicketChances` = redeemTicketChances - 1
WHERE redeemTicketChances > 0 AND userId='917'