Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment remplacer NULL par 0 dans la requête ?

Pas besoin de l'envelopper avec un autre CASE/COALESCE/IFNULL ou quoi que ce soit, utilisez simplement le CASE EXPRESSION ELSE , si toutes les conditions ne sont pas remplies, le ELSE sera utilisé.

UPDATE users 
           SET reputation = reputation +
                            CASE WHEN id = ? THEN 2
                                 WHEN id = ? AND NOT ? THEN 15
                                 ELSE 0
                            END
          WHERE id IN (?, ?);