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

MySql Table Insert, pokud neexistuje, jinak aktualizujte

Jai má pravdu, že byste měli použít INSERT ... ON DUPLICATE KEY UPDATE .

Všimněte si, že do klauzule aktualizace nemusíte uvádět datumové číslo, protože se jedná o jedinečný klíč, takže by se nemělo měnit. Musíte zahrnout všechny ostatní sloupce z tabulky. Můžete použít VALUES() funkce, abyste se ujistili, že při aktualizaci ostatních sloupců jsou použity správné hodnoty.

Zde je vaše aktualizace přepsaná pomocí správného INSERT ... ON DUPLICATE KEY UPDATE syntaxe pro MySQL:

INSERT INTO AggregatedData (datenum,Timestamp)
VALUES ("734152.979166667","2010-01-14 23:30:00.000")
ON DUPLICATE KEY UPDATE 
  Timestamp=VALUES(Timestamp)


  1. Migrace databáze MySQL z Amazon RDS do DigitalOcean

  2. Proč moje levé připojení t-sql nefunguje?

  3. Hibernace> CLOB> Oracle :(

  4. MySQL server zmizel - přesně za 60 sekund