MySQL peut-il utiliser l'instruction MERGE ?
Il est souvent souhaitable d'incorporer les opérations INSERT et UPDATE dans une seule requête. De nombreuses bases de données SQL proposent une instruction MERGE à cet effet. Cependant, MySQL prend-il en charge une telle instruction ?
MySQL et l'instruction MERGE
MySQL ne prend pas explicitement en charge l'instruction MERGE. Cependant, il fournit une alternative qui permet d'obtenir une fonctionnalité similaire : INSERT...ON DUPLICATE KEY UPDATE.
Syntaxe et utilisation
INSERT...ON DUPLICATE KEY L'instruction UPDATE vous permet d'insérer une nouvelle ligne dans une table, et si une ligne avec la même clé primaire ou unique existe déjà, elle mettra à jour la ligne existante avec la nouvelle valeurs.
La syntaxe est la suivante :
INSERT INTO table (column1, column2, ...) VALUES (value1, value2, ...) ON DUPLICATE KEY UPDATE column1 = new_value1, column2 = new_value2, ...
Exemple
Pour illustrer son utilisation, considérons l'exemple suivant :
INSERT INTO Employees (id, name, salary) VALUES (1, 'John Doe', 50000) ON DUPLICATE KEY UPDATE salary = salary + 10000;
Si un employé avec l'ID 1 existe déjà dans la table Employés, cette relevé mettra à jour son salaire en ajoutant 10000. Sinon, il insérera une nouvelle ligne pour John Doe avec un salaire de 50 000.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!