sql >> Databáze >  >> RDS >> Mysql

PŘI AKTUALIZACI DUPLIKÁTNÍHO KLÍČE s podmínkou WHERE

Použití IF() by mělo fungovat, i když to není hezké:

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 )

Aktualizujte pole novými hodnotami pouze v případě, že je podmínka splněna, jinak ponechte stará.




  1. Chyba (kód chyby:1175) při provádění příkazu aktualizace na stole pomocí MySQL Workbench 5.2

  2. Spouštějte skripty SQL v prostředí Multitenant s catcon.pl

  3. Kontrola omezení volání funkce Vývojář Oracle SQL

  4. INDIE, skript STD Code Finder v PHP, MYSQL, JQUERY