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

Aktualizujte, pokud řádek existuje, jinak vložte nový řádek do jiné tabulky

Pokud zadáte ON DUPLICATE KEY UPDATE a vloží se řádek, který by způsobil duplicitní hodnotu v UNIQUE index nebo PRIMARY KEY , UPDATE starého řádku se provádí. Pokud je například sloupec a deklarován jako UNIQUE a obsahuje hodnotu 1, následující dva příkazy mají stejný účinek:

INSERT INTO table (a,b,c) VALUES (1,2,3)
  ON DUPLICATE KEY UPDATE c=c+1;

UPDATE table SET c=c+1 WHERE a=1;


  1. Jak napsat aplikaci .Net, která funguje se SqlServerem i Oracle (nyní, když je System.Data.OracleClient zastaralý)

  2. Jak vygeneruji SQL skript z mého diagramu v MySQL Workbench?

  3. Vygenerujte SQL pro aktualizaci primárního klíče

  4. Rozdíl v požadovaném čase pro vložení záznamů InnoDB/MyISAM