Beegee a écrit :
Ca marchera pas, ça, ça va ressortir les clients ayant acheté que des articles rouges ... et pas ceux qui les ont tous achetés
Il faut compter le nombre d'articles distincts rouges, par client, et comparer au nombre total d'articles distincts rouges.
Code :
- SELECT Cl.NoClient, Cl.nomClient, COUNT(DISTINCT Ar.NoArt)
- FROM client AS Cl,
- détailCmde AS De,
- commande AS Co,
- article AS Ar
- WHERE Cl.NoClient=Co.NoClient
- AND De.NoCmde=Co.NoCmde
- AND Ar.NoArt = De.NoArt
- AND De.Couleur = 'rouge'
- GROUP BY Cl.NoClient, Cl.nomClient
- HAVING COUNT(DISTINCT Ar.NoArt) =
- (SELECT COUNT(NoArt) FROM article
- WHERE Couleur = 'rouge');
|
|