Heim >Datenbank >MySQL-Tutorial >Wie kann ich in PostgreSQL effizient die am häufigsten konsumierten Lebensmittel pro Land finden?
Effizientes Abrufen häufig auftretender Werte in SQL
Stellen Sie sich eine Datenbanktabelle vor, die Daten zu Ländern, Lebensmitteln und Essensverbrauch enthält. Um die am häufigsten konsumierten Lebensmittel für jedes Land zu ermitteln, könnte man sich einen mehrstufigen Ansatz vorstellen, wie in der Referenzabfrage beschrieben. Moderne Datenbanksysteme bieten jedoch prägnantere und optimiertere Lösungen.
PostgreSQL-Optimierung mit der Funktion mode()
PostgreSQL Version 9.4 führte die Aggregatfunktion mode() ein, die erheblich ist vereinfacht die Aufgabe, die häufigsten Werte in gruppierten Daten zu identifizieren. Die folgende Abfrage demonstriert ihre Verwendung:
SELECT mode() WITHIN GROUP (ORDER BY food_id) FROM munch GROUP BY country
Diese Abfrage erzeugt eine Tabelle mit zwei Spalten: Land und Modus, wobei letzterer die häufigste food_id für jedes Land darstellt. Die ORDER BY-Klausel stellt sicher, dass Bindungen zugunsten der kleinsten food_id unterbrochen werden.
Zusätzliche Ressourcen und Verbesserungen
Das obige ist der detaillierte Inhalt vonWie kann ich in PostgreSQL effizient die am häufigsten konsumierten Lebensmittel pro Land finden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!