Bonjour,
J'ai une base avec 4 Tables différentes : Table des projets (Projets), table des nomenclatures (Bom), table des quantités de prototypes (Project_proto), et une table temporaire (tmp_procurement) qui consolide tous les besoins en articles par semaine pour les prototypes.
Pour sortie des 3 premières tables, les besoins par article pour une semaine donnée j'ai écrit la requête suivante qui fonctionne à merveille :
Je voudrais maintenant mettre à jour la Table tmp_procurement qui ne contient que deux champs : no_piece et W808 mais je n'arrive pas à l'écrire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT tmp_procurement.no_piece, Sum(Project_proto.quantite) AS Besoin FROM ((tmp_procurement LEFT JOIN Bom ON tmp_procurement.no_piece = Bom.no_piece) LEFT JOIN Projets ON Bom.no_bom = Projets.no_bom) LEFT JOIN Project_proto ON Projets.no_projet = Project_proto.no_projet WHERE (((Project_proto.no_projet)<>"") AND ((Project_proto.semaine_proto)="808") AND ((Project_proto.date_out)="0000-00-00")) GROUP BY tmp_procurement.no_piece;
J'ai essayé :
mais il semble que Bom.no_piece ne soit pas qualifier ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 UPDATE tmp_procurement SET 808 = (SELECT Sum(Project_proto.quantite) FROM ((tmp_procurement LEFT JOIN Bom ON tmp_procurement.no_piece = Bom.no_piece) LEFT JOIN Projets ON Bom.no_bom = Projets.no_bom) LEFT JOIN Project_proto ON Projets.no_projet = Project_proto.no_projet WHERE (((Project_proto.no_projet)<>"") AND ((Project_proto.semaine_proto)="808") AND ((Project_proto.date_out)="0000-00-00")) GROUP BY tmp_procurement.no_piece) WHERE tmp_procurement.no_piece=Bom.no_piece;
J'ai également essayé :
mais là c'est le GROUP BY qui ne passe pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 UPDATE ((tmp_procurement LEFT JOIN Bom ON tmp_procurement.no_piece = Bom.no_piece) LEFT JOIN Projets ON Bom.no_bom = Projets.no_bom) LEFT JOIN Project_proto ON Projets.no_projet = Project_proto.no_projet SET 808 = Sum(Project_proto.quantite) WHERE (((Project_proto.no_projet)<>"") AND ((Project_proto.semaine_proto)="808") AND ((Project_proto.date_out)="0000-00-00") AND ((tmp_procurement.no_piece)=Bom.no_piece)) GROUP BY tmp_procurement.no_piece);
Si un expert des requêtes de chocs peut m'aiguiller ?
Partager