Bonjour,
Je travail sur une DB de location de voitures. J'ai une requête qui me demande de sélectionner la marque la plus louée, pour chaque client. Pour le moment, j'ai la marque la plus louée :

ma DB.pdf

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
SELECT ma.nom as marque_louée, (COUNT() || ' fois') as Nbr_de_fois
FROM locationvoiture.tcontrat cont
INNER JOIN locationvoiture.tvoiture voit ON(cont.ref_voiture = voit.id_voiture)
INNER JOIN locationvoiture.tmodele mod ON(voit.ref_modele = mod.id_modele)
INNER JOIN locationvoiture.tmarque ma ON(mod.ref_marque = ma.id_marque)
GROUP BY  ma.nom
ORDER BY COUNT() desc 
LIMIT 1;
Mais pas moyen de trier pour chaque client...
Ici la partie qui m'affiche chaque client

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
SELECT pers.nom, pers.prenom
FROM locationvoiture.tpersonne pers
INNER JOIN locationvoiture.tclient cl ON(pers.id_client = cl.ref_personne));
Mais je ne vois pas comment combiner les deux ?