Bonjour,

Je suis en train d'essayer d'écrire une requête de mise à jour en SQL.
Cependant je rencontre un problème :
Lorsque j'écris la requête de cette manière

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
UPDATE Vendeur INNER JOIN Secteur ON Vendeur.Num_secteur=Secteur.Num_secteur SET fixe = fixe*1.04
WHERE Nom_secteur="est" OR Nom_secteur="sud";
j'obtiens les modifications souhaitées

Lorsque j'écris la requête de la manière suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
UPDATE vendeur SET fixe = fixe*1.04
WHERE EXISTS (SELECT * FROM secteur WHERE vendeur.num_secteur=secteur.num_secteur AND secteur.nom_secteur ="est" OR secteur.nom_secteur ="sud");
Tous les enregistrements se mettent à jour et pas seulement les enregistrements des vendeurs "est" et "sud".
Mon "or" pose problème !

Comment écrire la requête avec where exists pour obtenir le même résultat que dans la 1ère solution ?

Bonne réception et merci de votre aide.