Maison  >  Article  >  base de données  >  Comment résoudre l'erreur « Utilisation invalide de la fonction de groupe » dans MySQL lors de la recherche du nombre maximum ?

Comment résoudre l'erreur « Utilisation invalide de la fonction de groupe » dans MySQL lors de la recherche du nombre maximum ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-24 19:01:29176parcourir

How to Resolve the

Comment récupérer le nombre maximum à l'aide de MySQL

Dans MySQL, vous pouvez rencontrer un problème en essayant de trouver le nombre maximum de valeurs regroupées par une colonne spécifique à l'aide de la commande suivante :

mysql> select max(count(*)) from emp1 group by name;
ERROR 1111 (HY000): Invalid use of group function

Comprendre l'erreur

L'erreur survient car MySQL ne permet pas d'utiliser des fonctions d'agrégation comme max et de compter ensemble comme arguments dans une autre fonction. Au lieu de cela, les fonctions de groupe comme count doivent être utilisées directement dans la clause GROUP BY.

Corriger la requête SQL

Pour trouver correctement le nombre maximum de valeurs regroupées par la colonne de nom , utilisez la requête modifiée suivante :

SELECT name,
       COUNT(*) AS c
FROM emp1
GROUP BY name
ORDER BY c DESC
LIMIT 1

Explication de la requête

  • L'instruction SELECT extrait la colonne de nom et le nombre de chaque nom en tant qu'alias c .
  • La clause GROUP BY name regroupe les résultats en fonction de la colonne nom.
  • La clause ORDER BY c DESC trie les résultats par ordre décroissant en fonction des valeurs de comptage.
  • La clause LIMIT 1 récupère uniquement la première ligne avec la valeur de comptage maximale.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn