UPDATE table SET champ1='valeur1' [, champ2='valeur2', ...] [WHERE ...];
La requête de modification ne sert que lorsque l'on a édité le contenu d'un tuple et que l'on veut le mettre à jour dans la base.
On doit pour cela spécifier la liste des champs à modifier, avec en face leur nouvelles valeurs. La clause WHERE est facultative, on peut très bien mettre à jour tout les tuples, sinon on rappelle l'identifiant de la ligne.
La nouvelle valeur d'un champ peut aussi bien être le résultat d'un calcul que d'un SELECT.
# Soyons fou !
# augmentons nos employés, analystes de tout poils, présents depuis moins 25 mois
# ou qui gagnent moins de 1'200 EUR, 10% de salaire en plus et 5% de commission en
# prime, quelle générosité !
UPDATE employes SET salaire=salaire*1.1 , commission=commission*1.05 WHERE fonction LIKE 'analyste%' AND (anciennete < 25 OR salaire < 1200);
# encore plus fort !
# on donne au(x) salarié(s) touchant le moins le même salaire que le salarié gagnant le plus...
UPDATE employes SET salaire=(SELECT MAX(salaire) FROM employes) WHERE salaire=(SELECT MIN(salaire) FROM employes);
"last but not least" : >> Requête de suppression.