Mysql
 sql >> Database >  >> RDS >> Mysql

Come sostituire NULL con 0 nella query?

Non c'è bisogno di avvolgerlo con un altro CASE/COALESCE/IFNULL o qualsiasi altra cosa, usa semplicemente CASE EXPRESSION ELSE , nel caso in cui tutte le condizioni non siano soddisfatte, il ELSE verrà utilizzato.

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