Probleme de group by

Nguyen.b 7 Messages postés lundi 7 novembre 2016Date d'inscription 24 avril 2017 Dernière intervention - 24 avril 2017 à 23:24 - Dernière réponse : Maestro04 10 Messages postés vendredi 7 juillet 2017Date d'inscription 9 juillet 2017 Dernière intervention
- 7 juil. 2017 à 14:15
Bonjour,
Pour un projet, j'ai une requête suivante à faire: Le client le plus rentable pour chaque publication de journal.
Pour le résultat ,j'aimerais que ce soit :
Nom publication, nom client, prénom client, la somme argent qu'il a dépensé

Pour cela j'ai fait :
NomPU : nom publication
NomC : Nom client
le sum marche très bien , c'est pour calculer le total dépense d'un client

SELECT tab1.NomPU, tab1.NomC, tab1.PrenomC, tab1.NomV max(tab1.[total_depense])

FROM (SELECT   pu.NomPU,cl.NomC, cl.PrenomC, v.NomV ,sum(ab.Nbnum*ab.PrixNumAb) as [total_depense]
             FROM Publication pu, Client cl, Abonner ab, Ville v     
             WHERE ab.CodeC=cl.CodeC
             AND ab.CodePU=pu.CodePU
             AND cl.CodeV=v.CodeV
             GROUP BY pu.NomPU,cl.NomC, cl.PrenomC, v.NomV)  AS tab1;


ça me sort pour chaque publication , tous les clients et leurs dépenses mais je voudrais seulement le client le plus rentable.

J'ai remarqué cela marche seulement si j'enleve le NomC et PrenomC du GROUP BY mais dans ce cas , je n'aurai pas d'information sur le client.

Pourriez vous m'aider en me donnant une façon de faire svp ?
Merci !
Afficher la suite 

Votre réponse

2 réponses

jordane45 21109 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 22 mai 2018 Dernière intervention - 25 avril 2017 à 00:40
0
Utile
Bonjour,

en jouant avec un ORDER BY et un LIMIT 1 ?
Commenter la réponse de jordane45
Maestro04 10 Messages postés vendredi 7 juillet 2017Date d'inscription 9 juillet 2017 Dernière intervention - 7 juil. 2017 à 14:15
-1
Utile
essaye de déclarer le nom de l'attribut que vous voulais grouper avec,puis un étoile.
Commenter la réponse de Maestro04

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.