Bonjour.
J'ai une requête a taper mais je n'y arrive pas.
Je sais pas trop comment vous expliquer le problème, mais en vous donnant la requête que j'ai pré établie et le but vous comprendrez beaucoup plus facilement.
La requête sémantiquement parlant : Le ou les genre(s) du ou des produit(s) le(s) plus acheté(s) en quantité.
La requête SQL :
Le problème : Je ne dois avoir que le genre dans mon résultat. actuellement j'ai le numProduit (pas de soucis pour le retirer) et SURTOUT le MAX(totalAchete).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 SELECT numProduit, MAX(totalAchete), genre from (SELECT sum(quantite) as totalAchete, LesAchats.numProduit, genre FROM LesAchats JOIN LesProduits on LesAchats.numProduit = LesProduits.numProduit GROUP BY LesAchats.numProduit);
Piste : je pense que la solution serais plutôt du coté d'un Having max(totalAchete) > = (Select ....) mais je n'ai pas réussi.
Le schéma de la base : http://nsa38.casimages.com/img/2017/...1917685450.png
Le fichier de la base est en PJ.
Ne cherchez pas la logique ou autre, ceci m'est demandé dans le cadre de ma formation et les contraintes sont strictes : on ne veux QUE le genre.
La question est donc : comment retirer le MAX(totalAchete) de mon résultat.
Je vous remercie de votre lecture.
EDIT : Je suis bete. Voici la solution que j'ai adopté
Je m'excuse pour ce post, mais je commencés a m’arracher les cheveux, pour un problème si basique ... enfin.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT genre from (SELECT MAX(totalAchete), genre from (SELECT sum(quantite) as totalAchete, LesAchats.numProduit, genre FROM LesAchats JOIN LesProduits on LesAchats.numProduit = LesProduits.numProduit GROUP BY LesAchats.numProduit));
Cordialement.
Partager