Requete avec somme sur valeur et filtre sur date - SQL/NoSQL - Programmation
Marsh Posté le 20-07-2009 à 15:58:28
pourquoi tu ne le mets pas dans ton where, tout simplement ?
il ne s'agit pas d'un agregat
Marsh Posté le 20-07-2009 à 16:04:04
C'est un agregat justement, je fais la somme des Qté expédiées par Article et pour les mouvements inférieurs à 90 jours
Marsh Posté le 20-07-2009 à 16:08:33
Tu as raison, des fois je vais chercher du compliqué quand on peut faire simple.
Réponse
SELECT DeliveryNotes.PartCode, Parts.PartName, Sum( DeliveryNotes.Quantity ) AS SumOfQuantity
FROM DeliveryNotes
LEFT JOIN Parts ON DeliveryNotes.PartCode = Parts.PartCode
WHERE ADDDATE( DeliveryNotes.ShippingDate, INTERVAL 90
DAY ) >= CURDATE( )
GROUP BY DeliveryNotes.PartCode, Parts.PartName
Merci pour le tuyau
Marsh Posté le 20-07-2009 à 15:55:38
Salut a toutes et à tous,
J'ai une erreur sur la requète ci-dessous : je veux avoir le total par article et pour une date inférieure de 90 jours
Problème : si je ne mets pas le champs DeliveryNotes.ShippingDate dans mon GroupBy, Mysql me dit ne pas connaitre ce champ dans le HAVING, et moi j'en veux pas dans le groupby de ce champ
Dois_je faire une sous requète de sélection par date de tous mes mouvements d'abord ou y a-t-il une autre solution ?
Merci
SELECT DeliveryNotes.PartCode, Parts.PartName, Sum( DeliveryNotes.Quantity ) AS SumOfQuantity
FROM DeliveryNotes
LEFT JOIN Parts ON DeliveryNotes.PartCode = Parts.PartCode
GROUP BY DeliveryNotes.PartCode, Parts.PartName
HAVING ADDDATE( DeliveryNotes.ShippingDate, INTERVAL 90
DAY ) >= CURDATE( )