Posez votre question Signaler

[SQL] Access 97 - max de count(*) group by

Laaris 134Messages postés 1 avril 2008Date d'inscription 17 juin 2011Dernière intervention - Dernière réponse le 30 août 2009 à 21:56
Bonjour,
La requête suivante est assez simple et me permet de récupérer le nombre d'observations pour chaque taxon.
SELECT [N° Taxon], count(*) AS [Nombre d'observations]
FROM observations
GROUP BY [N° Taxon];
Je voudrais maintenant récupérer le [N° Taxon] ayant le plus grand nombre d'observations, ainsi que ce nombre. C'est à dire la ligne du résultat de la requête, ayant le plus grand [Nombre d'observations].
Il y a sûrement un truc à faire avec max() quelque part, j'ai essayé différentes solutions mais ça me marche jamais.
Quelqu'un peut-il m'aider?
Merci d'avance.
Lire la suite 

[SQL] Access 97 - max de count(*) group by »

6 réponses
Réponse
+0
moins plus
SELECT [N° Taxon], count(*) AS [Nombre d'observations]
FROM observations
GROUP BY [N° Taxon]
having count(*) = (SELECT max( count(*))
FROM observations
GROUP BY [N° Taxon])
Laaris- 11 avril 2008 à 11:49
Merci pour ta réponse.

C'est aussi ce que j'aurai fait sous Oracle, mais Access n'accepte pas max(count(*)).
Ajouter un commentaire
Réponse
+0
moins plus
justement je l'ai testée sous oracle avant te l'écrire
malheureusement j'ai pas access je travaille avec open office :-(
Ajouter un commentaire
Réponse
+0
moins plus
Pour info max(count(*)) ne fonctionne pas non plus sous SQL Server
Ajouter un commentaire
Réponse
+0
moins plus
Il y aurait moyen pour ces autres SGBD de faire un tri décroissant (ORDER BY DESC) sur la colonne retournant le nombre d'observations et de filtrer pour obtenir uniquement la première ligne, avec ROWNUM ou quelque chose d'équivalent, du moins il me semble à première vue.
Ajouter un commentaire
Réponse
+0
moins plus
Ta requête devrait ressembler à peu près à ça :

http://www.xoowiki.com/Article/SQL-Server/detail-dune-valeur-max-enfant-143.aspx
Ajouter un commentaire
Ce document intitulé « [SQL] Access 97 - max de count(*) group by » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?