Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

ON DUPLICATE KEY UPDATE dengan kondisi WHERE

Menggunakan IF() seharusnya berfungsi, meskipun tidak bagus:

INSERT INTO table1 SET 
 field1=aa, 
 field2=bb, 
 field3=cc 
ON DUPLICATE KEY UPDATE SET 
 field1 = IF( field4 = zz, aa, field1 ),
 field2 = IF( field4 = zz, bb, field2 ),
 field3 = IF( field4 = zz, cc, field3 )

Hanya perbarui bidang dengan nilai baru jika kondisinya terpenuhi, jika tidak, pertahankan yang lama.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara menampilkan teks dari database dengan jeda baris dalam templat Django?

  2. Javascript PHP? Lakukan sesuatu saat pengguna menutup halaman atau browser

  3. Lampiran PHP di email kosong

  4. kueri mahal menurunkan server basis data -- mencari cara untuk menguranginya

  5. Menyortir/memesan di MySQL