Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Chỉ cập nhật trường MYSQL nếu trường chứa null hoặc 0

Hãy thử điều này:

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

Tôi đã không sử dụng các công cụ MySQL nâng cao hơn (như IF) một chút, vì vậy tôi không tích cực về điều này, nhưng nó sẽ đúng. Phần quan trọng là đặt rFiles thành giá trị được trả về bởi IF.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lỗi MySQL chuỗi trống được cung cấp làm đối số cho! tính cách

  2. Nhận giá trị trước sau khi cập nhật - MySql

  3. PHP:PDO Truy vấn không trả về kết quả nào, nhưng cùng một truy vấn trả về 4 kết quả trong phpmyadmin?

  4. Slick động groupby

  5. MySQL ERROR 1045 (28000):Quyền truy cập bị từ chối đối với người dùng 'bill' @ 'localhost' (sử dụng mật khẩu:CÓ)