Maison >base de données >tutoriel mysql >Comment puis-je trouver efficacement l'aliment le plus fréquemment consommé par pays dans SQL ?

Comment puis-je trouver efficacement l'aliment le plus fréquemment consommé par pays dans SQL ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-30 02:39:08311parcourir

How Can I Efficiently Find the Most Frequently Consumed Food Item per Country in SQL?

Requête efficace pour trouver les valeurs les plus courantes en SQL

Considérez une table avec la structure suivante :

  • country : Représentation textuelle d'un pays
  • food_id : Identifiant unique pour chaque type de nourriture
  • consommée : Date à laquelle la nourriture a été consommée

La tâche à accomplir est d'identifier l'aliment le plus fréquemment consommé pour chaque pays. Une approche courante consiste à créer plusieurs tables temporaires pour calculer les décomptes et les valeurs maximales, comme indiqué dans la question. Cependant, cette méthode peut être lourde et nécessiter de rompre les égalités lorsque plusieurs aliments ont le même nombre.

Une solution simplifiée

PostgreSQL 9.4 a introduit la fonction mode(), qui offre une approche plus simple :

select mode() within group (order by food_id)
from munch
group by country

Cette requête renvoie l'aliment le plus courant pour chaque pays, éliminant ainsi le besoin de requêtes complexes. calculs et tables temporaires. Les résultats sont présentés comme suit :

country | mode
--------------
GB      | 3
US      | 1

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