【发布时间】:2011-09-15 19:07:17
【问题描述】:
我想一次更新两个表。下面的代码似乎工作正常。但是,在某些情况下,bidGroups 中没有条目,这意味着整个语句将失败。如何调整它以更新第一位(watchedItems)并且如果 watchItems.bidGroupID 为空则不尝试第二部分
UPDATE watchedItems, bidGroups
SET watchedItems.won=1, bidGroups.bidGroupQty=bidGroups.bidGroupQty-1
WHERE watchedItems.id=2
AND watchedItems.aid=200618152822
AND bidGroups.bidGroupID=watchedItems.bidGroupID
AND bidGroups.id=2;
我试过了,但是语法错误..
UPDATE watchedItems, bidGroups
SET watchedItems.won=1,
CASE WHEN watchedItems.bidGroupID IS NOT NULL THEN bidGroups.bidGroupQty=bidGroups.bidGroupQty-1
ELSE END
WHERE watchedItems.id=2
AND watchedItems.aid=200618152822
AND bidGroups.bidGroupID=watchedItems.bidGroupID
AND bidGroups.id=2
【问题讨论】:
标签: mysql sql conditional