Heim >Datenbank >MySQL-Tutorial >Wie kann ich Histogramme mit benutzerdefinierten Bin-Größen in MySQL erstellen?

Wie kann ich Histogramme mit benutzerdefinierten Bin-Größen in MySQL erstellen?

Susan Sarandon
Susan SarandonOriginal
2024-10-27 18:51:30831Durchsuche

 How Can I Create Histograms with Custom Bin Sizes in MySQL?

Erstellen von Histogrammen mit benutzerdefinierten Bin-Größen in MySQL

In MySQL umfasst das Extrahieren von Daten für Histogrammdiagramme häufig das Gruppieren von Daten basierend auf vordefinierten Bin-Größen. Während eine grundlegende Gruppierung mithilfe der GROUP BY-Klausel erreicht werden kann, stellt die Angabe benutzerdefinierter Bin-Größen eine Herausforderung dar. Eine einfache Problemumgehung kann Ihnen jedoch dabei helfen, dieses Ziel zu erreichen.

Betrachten Sie die folgende SQL-Abfrage:

<code class="sql">select total, count(total) from faults GROUP BY total;</code>

Diese Abfrage erzeugt detaillierte Daten, aber zahlreiche Zeilen zu haben, kann überwältigend sein. Um die Daten direkt in SQL in vordefinierte Bins zu gruppieren, können Sie einen einfachen Ansatz nutzen:

<code class="sql">SELECT ROUND(numeric_value, -2)    AS bucket,
       COUNT(*)                    AS count,
       RPAD('', LN(COUNT(*)), '*') AS bar
FROM   my_table
GROUP  BY bucket;</code>

Durch Anpassen des Rundungsinkrements innerhalb der ROUND-Funktion können Sie die Bin-Größe anpassen. ROUND(numeric_value, -1) erstellt beispielsweise Bins der Größe 10. Durch Ändern des Rundungsinkrements und des anfänglichen Offsets können Sie die Bin-Größen an Ihre spezifischen Anforderungen anpassen.

Der Trick hier ist die Verwendung von ROUND Funktion mit einem geeigneten Offset, um sicherzustellen, dass jede Bin ungefähr die gleiche Anzahl von Elementen enthält. Alternativ kann TRUNCATE anstelle von ROUND verwendet werden.

Diese Lösung bietet eine bequeme und flexible Möglichkeit, Histogramme mit benutzerdefinierten Bin-Größen in MySQL zu erstellen. Für fortgeschrittenere Techniken zur Histogrammerstellung sollten Sie CASE-Anweisungen oder andere komplexe Logik für mehr Flexibilität in Betracht ziehen.

Das obige ist der detaillierte Inhalt vonWie kann ich Histogramme mit benutzerdefinierten Bin-Größen in MySQL erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn