sql >> Base de Datos >  >> RDS >> Mysql

MySQL:actualice si existe más inserte con dos claves

Intenta usar un IF EXISTS para determinar si ejecutar una UPDATE o un INSERT declaración. Puede hacer esto en una declaración/consulta de PHP.

IF EXISTS(SELECT 1 FROM Mytable WHERE foreign_key_id = f1 AND value1 = v1)
BEGIN
    UPDATE Mytable SET value2 = v2
    WHERE foreign_key_id = f1 AND value1 = v1;
END
ELSE
BEGIN
      INSERT INTO Mytable(foreign_key_id,value1,value2)
      VALUES (f1,v1,v2);
END IF;