Không cần bọc nó bằng một CASE/COALESCE/IFNULL khác hoặc bất cứ điều gì, chỉ cần sử dụng CASE EXPRESSION ELSE , trong trường hợp tất cả các điều kiện không được đáp ứng, ELSE sẽ được sử dụng.
UPDATE users
SET reputation = reputation +
CASE WHEN id = ? THEN 2
WHEN id = ? AND NOT ? THEN 15
ELSE 0
END
WHERE id IN (?, ?);