Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Atualize se a linha existir, caso contrário, insira uma nova linha em outra tabela


Se você especificar ON DUPLICATE KEY UPDATE , e uma linha é inserida que causaria um valor duplicado em um UNIQUE index ou PRIMARY CHAVE , uma UPDATE da linha antiga é executada. Por exemplo, se a coluna a for declarada como UNIQUE e contém o valor 1, as duas declarações a seguir têm efeito idêntico:
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;