cs_loic72
Messages postés18Date d'inscriptionvendredi 4 novembre 2005StatutMembreDernière intervention 1 août 2007
-
2 mai 2006 à 17:02
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 2011
-
3 mai 2006 à 20:03
bonsoir,
j'ai une question pour ceux qui métrisent les requete update aliant les select qui utilisent les group by?
Je m'explique. Voici ma requete vous verrez ce que je veux dire :
update projet
set p_max=
( select max(aj_budget_engage),aj_proj_id,aj_phas_id,aj_tach_id
from ajust
group by aj_proj_id,aj_phas_id,aj_tach_id )
where p_proj_id=aj_proj_id and p_phas_id=aj_phas_id and p_tach_id=aj_tach_id
le but :
sélectionner Max, le maximum d'un champ d'une table, pour chaque projet,phase,tache et mettre à jour ma table avec MAX.
nhervagault
Messages postés6063Date d'inscriptiondimanche 13 avril 2003StatutMembreDernière intervention15 juillet 201137 2 mai 2006 à 21:38
Salut
update projet
set p_max=
( select max(aj_budget_engage)
from ajust
group by aj_proj_id,aj_phas_id,aj_tach_id )
where p_proj_id=aj_proj_id and p_phas_id=aj_phas_id and p_tach_id=aj_tach_id
Fonctionne-til car dans le set tu ne peux mettre qu'un champ , ce qui est logique.
Mais le group by continue normalement de focntionner.
cs_loic72
Messages postés18Date d'inscriptionvendredi 4 novembre 2005StatutMembreDernière intervention 1 août 20071 3 mai 2006 à 13:34
Salut et merci pour ta réponse.
le problème est que le grouop by pose problème : j'ai une erreur (je bosse sur une base Access) :
" [Microsoft][Pilote ODBC Microsoft Access] Trop peu de paramètres. 3 attendu "
à la ligne où j'exécute la requete.
le problème c'est de récupérer la valeur max et d'affecter le champ de ma table avec.
seulement si j'utilise le group by ça me force à mettre plusieurs paramètres en retour dans mon select.