Faire un update avec select et jointure

Messages postés
27
Date d'inscription
jeudi 28 décembre 2006
Statut
Membre
Dernière intervention
9 avril 2009
- - Dernière réponse : Meric92
Messages postés
27
Date d'inscription
jeudi 28 décembre 2006
Statut
Membre
Dernière intervention
9 avril 2009
- 9 avril 2009 à 15:56
Bonjour,

Je cherche donc a faire un update dans une table avec des conditions que je récupère a l'aide d'un select dans une table jointe...
Je vous montre ma requête :

update FORMATION_PROF
set date_debut = date_saisie
where ( select count (COUPON_FORMATION.id_coupon)
             inner join COUPON_FORMATION on FORMATION_PROF.id_formation = COUPON_FORMATION.id_formation
             where COUPON_FORMATION.id_formation = FORMATION_PROF.id_formation )
             = 0
and FORMATION_PROF.date_saisie like "%2007";

Mon erreur est :
#1064 - You have an error in your SQL syntax; check the manual
that corresponds to your MySQL server version for the right syntax to
use near 'inner join COUPON_FORMATION on FORMATION_PROF.id_formation =
COUPON_FORMATION.id' at line 4


Le but étant de mettre la valeur de date_saisie dans date_debut pour toutes les formations qui n'ont pas de coupon et qui ont été saisies en 2007.

Je remercie toute aide a l'avance
Afficher la suite 

2 réponses

Messages postés
698
Date d'inscription
jeudi 16 janvier 2003
Statut
Membre
Dernière intervention
20 mai 2011
2
0
Merci
avec ca je pense que ca devrait etre bon, si toutefois j'ai bien compris la structure de ta base

update FORMATION_PROF
set date_debut = date_saisie
where id_formation NOT IN ( select id_formation FROM COUPON_FORMATION)
and FORMATION_PROF.date_saisie like "%2007";
Commenter la réponse de aieeeuuuuu
Messages postés
27
Date d'inscription
jeudi 28 décembre 2006
Statut
Membre
Dernière intervention
9 avril 2009
0
Merci
Merci pour votre aide, malheureusement je ne peux plus tester cette solution, j'avais trouvé une solution différente.
En tout cas le "NOT IN" était en effet plus logique a utilisé dans ce cas que le count( ) ! Parfois on a vraiment la tête dans son écran ....

Longue vie a CodeS-SourceS  ^_^
Commenter la réponse de Meric92