utilisation d'un select dans le set d'un UPDATE

utilisation d'un select dans le set d'un UPDATE - SQL/NoSQL - Programmation

Marsh Posté le 29-04-2003 à 17:40:49    

Rien de tel qu'un exemple ppour faire comprendre ce que je veux dire:
 
UPDATE table
SET Champ1='053', Champ2=0.7* (Valeur que je recherche à l'aide d'un select)
 
Copie ci dessus des deux éléments de la raquête
 
Requete principale
UPDATE invent0403.mp003p  
SET M3LIE='053', M3PUC=0.7* X
WHERE invent0403.mp003p.m3cps IN  
(SELECT cocps FROM opssl50dta.co001p INNER JOIN invent0403.mp003p
ON (opssl50dta.co001p.cocps=invent0403.mp003p.m3cps)
WHERE opssl50dta.co001p.cosfc='TF';)
AND invent0403.mp003p.m3quc in ('2', '4';)
AND invent0403.mp003p.m3lie='001'
 
Valeur X
(SELECT crp06 AS X FROM opssl50dta.cr001p INNER JOIN invent00403.mp003p  
ON  (opssl50dta.cr001p.crart=invent0403.mp003p.m3cps)
WHERE opssl50dta.cr001p.crcli=99998
AND opssl50dta.cr001p.crsai='P3A';)
 
Si quelqu'un pourrait m'aider ça m'arrangerait bcp.


Message édité par maxwell01 le 30-04-2003 à 14:29:31
Reply

Marsh Posté le 29-04-2003 à 17:40:49   

Reply

Marsh Posté le 30-04-2003 à 10:03:30    

Personne n'a d'idée.
Parce que là je désespère!!!!
ca fait plusieurs heures que je suis dessus et je trouve pas.
Merci d'avance.

Reply

Marsh Posté le 30-04-2003 à 10:04:18    

Quel SGBD ?

Reply

Marsh Posté le 30-04-2003 à 10:05:29    

UPDATE champs FROM tables WHERE champ = ou IN (SELECT blabla)


---------------
.: Clône de Drasche .:. Ebichuleys .:. Avec l'Aloe Vera je fais de beaux cacas [:dawa] .: www.oserselancer.com :.
Reply

Marsh Posté le 30-04-2003 à 10:23:05    

DB2
 
Il ne m'accpete pas cette syntaxe :non:  

Reply

Marsh Posté le 30-04-2003 à 10:49:14    

DB2 ...
 
Et ça t'as essayé comme syntaxe ?
 
update tab1, tab2
set tab1.x=tab2.y
where tab1.cle = tab2.cle
 
ou
 
update tab1
set tab1.x=(select tab2.y
from tab2 where tab1.cle = tab2.cle)
 
 

Reply

Marsh Posté le 30-04-2003 à 11:13:50    

J'ain essayé ça et ça marche pas
update tab1  
set tab1.x=(select tab2.y  
from tab2 where tab1.cle = tab2.cle)
 
je vais essayé l'autre.
 

Reply

Marsh Posté le 30-04-2003 à 11:30:17    

sauf erreur de ma part tu dois pas pouvoir faire à la fois un update et un select sur la meme table avec db2. Tout comme on peut pas faire insert into MATABLE select champs from MATABLE where ...

Reply

Marsh Posté le 30-04-2003 à 14:24:18    

ça ne marche pas non plus
 
Alors apparemment y a pas d'espoir
 
Personne n'aurait une astuce pour contourner ce problème?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed