PostgreSQL -Gruppierungssätze

PostgreSQL -Gruppierungssätze
In diesem Artikel wird das Konzept der Gruppierungssätze in Postgres erörtert. Wenn wir in unserer Datenbank eine Multiple-Spalumn-Tabelle verwenden, stellen die verschiedenen Spalten verschiedene Datenbankattribute dar, und manchmal sind sie schwer zu verstehen. Dieses Problem wird also durch die Verwendung der Gruppierungssätze gelöst, in denen wir mehrere relevante Spalten gruppieren, die wir für die Ausgabe benötigen, oder für das Kompilieren einer Summe für die resultierende Ausgabe. Dies hilft, die zahlreichen Fragen zu reduzieren, die wir ausführen müssen, um den gleichen Ausgang zu erhalten.

Gruppierungssätze in SQL

Wie oben erläutert, ermöglicht es SQL, Spalten zu Gruppen zu erstellen, um kompilierte Ausgänge in den Zeilen unserer Datenbanktabelle bereitzustellen. Wenn wir Tabellen in unserer Datenbank verwenden, konzentrieren wir uns auf die Werte, um ein besseres Verständnis zu haben. Trotzdem machen die Komplexität und Skalierbarkeit der Daten es für uns zu einem Problem, die Daten zu analysieren. Hier ist das Konzept der Gruppierungssätze praktisch, durch das wir die Spalten entsprechend unseren Anforderungen vereinfachen und dann die vereinfachten Daten mühelos analysieren.

Das Konzept der Gruppierungssätze wird durch den Befehl "Gruppe by" und "Gruppierungssätze" erreicht. Obwohl der Befehl „Alleinheit All“ in SQL dieselbe Aufgabe erledigen kann. Es führt zu verschiedenen Einschränkungen, wodurch es dem Entwickler unpraktisch ist und der Idee der Gruppierungssätze unterlegen ist, was bequemer und genauer mit Präzision ist. Der Befehl „All Union All“ erfordert die genaue Anzahl der Attribute mit identischen Datentypen für jede Spalte.

In neueren Updates dieser Sprache folgt dem Befehl „Gruppen by“ den Befehl „Gruppiersätze“, für die keine Sub-Querien wie der Gewerkschaftsbefehl und Gruppen die Set in eine vereinfachte Form erforderlich sind. Für die Implementierung dieses Konzepts müssen wir der unten geschriebenen allgemeinen Syntax folgen:

WÄHLEN
Erste Spalte,
Second_Column,
Aggregate_Function (Third_Column)
AUS
Name_of_the_table
GRUPPIERE NACH
Gruppierungssätze (
(First_Column, Second_Column),
(Erste Spalte),
(Second_Column),
()
);

Wir haben in der vorherigen Syntax mehrere Befehle verwendet:

  • Die erste ist "Select", in der wir die Spalten auswählen, um das Ergebnis und die Aggregatfunktion zum Berechnen und Anzeigen der Ausgabe in der letzten Spalte zu berechnen und zu empfangen. Die Aggregatfunktion ist eine einfache Methode, um Zahlen in jeder Zeile in den beiden Spalten zu aggregieren: Summe, AVG, Min und Max.
  • Zweitens gibt der Befehl „From“ den Namen der Tabelle in unserer Datenbank an, die wir zum Kompilieren von Ausgängen verwenden. Danach wird der Befehl „Gruppe by“ verwendet, in dem ein Hinweis darauf besteht.

Gruppierungssätze in PostgreSQL

Da wir jetzt mit der Syntax von Gruppierungssätzen vertraut sind, können wir uns mit mehreren Beispielen befassen, um dieses Konzept in Postgresql zu implementieren. Wir können Gruppierung mit:

  • Zwei Spalten einer Tabelle
  • Drei Spalten einer Tabelle
  • Bestellung nach Befehl

Gruppieren Sie zwei Spalten einer Tabelle

Dieses Beispiel bezieht sich auf einen einfacheren Gruppierungssatz von nur zwei Spalten. Wir erstellen zunächst eine Tabelle mit dem Namen Datensätze mit Attributen wie Rollnummer, Name des Kurses und Markierungen sowie mit Hilfe des angegebenen Code im folgenden Snippet:

Nach dem Erstellen einer Tabelle fügen wir einige Datenwerte in die Zeilen verschiedener Spalten ein, die wir im Befehl weiterer Gruppierungssätze kompilieren werden:

Jetzt werden wir die folgenden Befehle schreiben, die in den Gruppierungssätzen in SQL helfen. Die Rollnummer des Schülers wird nach der Summe aller Noten in allen Kursen gruppiert:

Wenn wir den vorherigen Code ausführen, erhalten wir die folgende Ausgabe:

Wie die Ausgabe schon sagt, sind alle Zeilen in Bezug auf die Summe aller Kurse gruppiert. Die Summe aller Markierungen wird gegen dieselbe Rollnummer angezeigt. Wir können diese Funktion auch mit mehr als einer Rollnummer ausführen, da sie die gleiche Rollzahl der Schülerspuren in der zweiten Spalte gegen die angegebene Rollnummer gruppiert.

Gruppieren Sie drei Spalten einer Tabelle

In diesem Beispiel erstellen wir eine Tabelle in unserer Datenbank mit 4 verschiedenen Spalten und verwenden das Gruppierungssatzkonzept in der Tabelle. Zunächst müssen wir den folgenden Code ausführen, um eine Tabelle zu erstellen.

Anschließend werden wir für zwei verschiedene Schüler eine Reihe von Werten für mehrere Kurse, die für den Kurs erforderlichen Stunden und dann die Markierungen dieses Kurses einfügen.

Nachdem wir die vorherigen Daten ausgeführt und erfolgreich hinzugefügt haben, wechseln wir zur Gruppierung dieser Daten über die Rollnummer des Schülers und den Namen des Kurses. Dazu werden wir den Code im folgenden Snippet schreiben und ausführen:

Die Ausgabe des vorherigen Codes wird im folgenden Bild angezeigt:

Wie Sie sehen können, haben wir die komplexe Tabelle zu einem vereinfachten und gewünschten und gewünscht, indem wir sie in Rollnummern und Kursnamen und die Markierungen bei Wiederholungen hinzufügen. Dies geschah in der Rollnummer „205“, deren Mathematiknoten zweimal hinzugefügt wurden, seit sie wiederholt wurden.

Wir können auch die vorherigen Spalten nur nach dem Kursnamen gruppieren und die Summe der Noten in jedem Kurs erhalten. Dafür schreiben wir die folgende Abfrage und führen sie dann aus:

In dieser Abfrage gruppiert wir nur die Spalte "Kursname", und die Spalte "Marks" wurde nach der Gesamtfunktion "Summe" gruppiert. Sobald diese Abfrage ausgeführt wird, wäre die Ausgabe wie folgt:

Das Ergebnis zeigt einen verfeinerten Überblick über die Tabelle, und dies zeigt auf die Tatsache, dass das Konzept der Gruppierungssätze uns eine sehr vereinfachte Version der Tabelle bietet, die uns in unserer Analyse hilft.

Gruppierung setzt mit dem Befehl "order by"

Wir können Sätze der Spalten erstellen und die gewünschte vereinfachte Version der Tabelle erhalten, aber manchmal scheint es immer noch desorientiert zu sein. Wir können dies also weiter vereinfachen, indem wir den Befehl „Order by“ verwenden, der das Attribut gemäß unserer Spezifikation priorisiert. Nach dem Befehl "gruppe by" wird dieser Befehl ausgeführt. Um den Befehl „Order by“ mit Gruppierungssätzen besser zu erfassen, werden wir das vorherige Beispiel verwenden, um ihn anzuwenden. Während wir die Spalten in der Tabelle im letzten Beispiel erfolgreich gruppiert haben, werden wir sie mit dem Kursnamen und dem Attribut für Marks bestellen.

In dieser Abfrage haben wir die Ausgabe so in alphabetischer Reihenfolge der Kursnamen als Ausgabe wie unten gezeigt platziert:

Wir können die Ausgabe auch in absteigender Reihenfolge der Markierungen bestellen, indem wir diese Abfrage schreiben:

Abschluss

In diesem Tutorial haben wir das Konzept der Gruppierungssätze in SQL gelernt. Der Vorteil der Verwendung des Befehls „Gruppe by“ gegenüber dem Befehl „Union All“ wurde in diesem Artikel ebenfalls erörtert. Danach haben wir auch dieses Konzept der Gruppierungssätze in der PostgreSQL -Umgebung implementiert, die uns dazu veranlasste, dieses wichtige Konzept in der strukturierten Abfragesprache besser zu wissen. Zuletzt haben wir verschiedene Möglichkeiten zur Implementierung dieses Konzepts untersucht, indem wir einige Faktoren ändern und sogar die Datensätze verstärken, um die Ausgangseffizienz zu überwachen. Wir hoffen, Sie haben diesen Artikel hilfreich gefunden. Weitere Tipps und Informationen finden Sie in anderen Linux -Hinweisartikeln.