Bonjour,
Je souhaite réaliser une equête de mise à jour d'un table "table1", jointe avec 2 autres tables (table2 et table3), et mettre la valeur d'un champ de la table 3 dans un champ de la table 1.
Je ne sais pas si je suis très clair.
mes jointures entre mes tables :
TABLE2.CHAMP1 = TABLE1.CHAMP2
TABLE2.CHAMP1 = TABLE3.CHAMP3
TABLE1.CHAMP4 = TABLE3.CHAMP5
Expression litérale de mise à jour :
quand les champ 10 et 11 de ma table 1 sont null, et que le champ 6 de la table 3 est égal à 'N' (CHAR(1), alors mettre la valeur de table3.champ10 dans table1.champ11 et '20' (CHAR(2) )dans le champ10 de la table 1
la requête ci dessus me donne une erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 UPDATE TABLE1 SET CHAMP10 = '20', CHAMP11=TABLE3.CHAMP10 WHERE TABLE2.CHAMP1 = TABLE1.CHAMP2 AND TABLE2.CHAMP1 = TABLE3.CHAMP3 AND TABLE1.CHAMP4 = TABLE3.CHAMP5 AND TABLE3.CHAMP6 = 'N' AND CHAMP10 Is null AND CHAMP11 Is null ;
ERREUR à la ligne 6 :
ORA-00904: "TABLE3"."CHAMP6" : identificateur non valide
j'ai la même erreur sur la ligne 5 avec le champ TABLE3.CHAMP5 quand je supprime la ligne 6.
comment faire pour réaliser ma mise à jour ?
Merci d'avance.
Bonne journée.
Partager