Bonjour à tous
J'ai une table qui contient des prévisions.Ces prévisions doivent être rangées par année, mois, article, client, et doivent totaliser une quantité en commande.
Cette quantité varie selon le besoin du client, et est associée à une date de calcul. Le tout est borné sur des dates passées en paramètres.
Il peut y avoir plusieurs lignes (normalement max 2), pour une même date de calcul.
Il faut donc lire uniquement les dernière dates pour chaque prévision année/mois/article/client et si deux lignes pour la même date il faut additionner les quantités pour un seule ligne.
Je suis parti sur une sur une requête :
Mais le résultat n'est pas correct, la quantité n'étant jamais correctement additionnée ou empêchant le regroupement par date.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31 SELECT annee, mois, no_art, no_cli, la_somme_qte_pic, MAX(date_calcul) FROM (SELECT LEFT(ficPrevisions.date_besoin , 4 ) AS annee, SUBSTRING(ficPrevisions.date_besoin , 5, 2 ) AS mois, ficPrevisions.no_art AS no_art, ficPrevisions.no_cli AS no_cli, SUM(ficPrevisions.qte_pic) AS la_somme_qte_pic, ficPrevisions.date_calcul AS date_calcul FROM ficPrevisions WHERE LEFT(ficPrevisions.date_besoin , 4 ) BETWEEN {pAnneeDebut} AND {pAnneeFin} GROUP BY LEFT(ficPrevisions.date_besoin , 4 ), SUBSTRING(ficPrevisions.date_besoin , 5, 2 ), ficPrevisions.no_art, ficPrevisions.no_cli, ficPrevisions.date_calcul) GROUP BY annee, mois, no_art, no_cli, la_somme_qte_pic
J'ai testé avec la somme dans la sous requête et l'extraction date dans la requête principale mais le problème reste le même.
J'ai essayé sans sous requêtes mais même résultat.
J'ai essayé avec EXISTS mais beaucoup trop long, je n'ai pas pu consulter le résultat.
Qu'en pensez-vous ?
Merci pour vos retours.
Partager