Requete pour compter [Résolu]

Signaler
Messages postés
90
Date d'inscription
mardi 15 novembre 2011
Statut
Membre
Dernière intervention
17 septembre 2019
-
dentfree
Messages postés
90
Date d'inscription
mardi 15 novembre 2011
Statut
Membre
Dernière intervention
17 septembre 2019
-
Je souhaiterai faire une requête pour faire une liste de personne qui ont écrit plus de 5 titres.

Je dispose une table personne, titre ainsi qu'une table 'écrit par' créée pas les cardinalités 0,n.

J'ai essayer le requête :

select COUNT(ID_TITRE), NOM_
from ECRIT_PAR,PERSONNE
where ECRIT_PAR.ID_PERSONEE=PERSONNE.ID_PERSONEE
group by ID_TITRE, NOM_PERSONNE

Sa me donne tout les nom des auteurs. Si l'auteur a écrit 3 titre, il me réécrit l'autre 3 fois.

Qui pourrait m'aider??

2 réponses

Messages postés
90
Date d'inscription
mardi 15 novembre 2011
Statut
Membre
Dernière intervention
17 septembre 2019

voila, la solution est :

select nom_, COUNT(PERSONNE.ID_PERSONEE)
from ECRIT_PAR join PERSONNE
on ECRIT_PAR.ID_PERSONEE = PERSONNE.ID_PERSONEE
group by personne.ID_PERSONEE , NOM_
having (COUNT (personne.id_personee))>=5

merci de l'aide
Messages postés
1540
Date d'inscription
lundi 26 mai 2003
Statut
Membre
Dernière intervention
1 août 2013
11
Salut,

tu dois grouper uniquement ce par quoi tu veux grouper en l'occurence l'auteur.
Et pour déterminer un palier sur le dénombrement il faut utiliser la clause HAVING.
En résumé l'erreur est dans ton GROUP BY, le reste est bon.