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

Ne mettez à jour le champ MYSQL que si le champ contient null ou 0

Essayez ceci :

...
ON DUPLICATE KEY UPDATE
rFormat=VALUES(rFormat),
rFiles=IF(ISNULL(rFiles), VALUES(rFiles), VALUES(rSizeMB)),
rText=VALUES(rText);

Je n'ai pas utilisé des trucs MySQL plus avancés (comme IF) depuis un moment, donc je ne suis pas positif à ce sujet, mais ça devrait être à peu près correct. La partie clé consiste à définir rFiles sur la valeur renvoyée par le SI.