Bonjour à tous,

j'aimerais savoir si il est possible de mettre à jour une table à partir d'une requête. Voici un exemple de ce que je veux faire :

Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
UPDATE (SELECT t1.* FROM t1,t2 WHERE t1.champ1 = t2=champ1)
SET champ2 = 4

Ce que je voudrais donc faire c'est attribuer la valeur au champ "champ2" de la table t1 uniquement pour les enregistrements de t1 présents dans t2. Cette requête est-elle valide ?

Sinon une requête fonctionnant mais prenant beaucoup trop de temps :

Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
UPDATE t1
SET champ2 = 4
WHERE EXISTS (
   SELECT 1
   FROM t2 
   WHERE t1.champ1 = t2=champ1
)