Skip to content
Natuurondernemer
    Februar 11, 2021 by admin

    PostgreSQL SELECT DISTINCT

    PostgreSQL SELECT DISTINCT
    Februar 11, 2021 by admin

    Zusammenfassung: In diesem Tutorial lernen Sie, wie Sie die PostgreSQL SELECT DISTINCT-Klausel verwenden, um doppelte Zeilen aus einer von einer Abfrage zurückgegebenen Ergebnismenge zu entfernen.

    Einführung in PostgreSQL SELECT DISTINCT Klausel

    Die DISTINCT Klausel wird in der SELECT Anweisung verwendet, um doppelte Zeilen aus einer Ergebnismenge zu entfernen. Die DISTINCT-Klausel behält eine Zeile für jede Gruppe von Duplikaten. Die DISTINCTKlausel kann auf eine oder mehrere Spalten in der Auswahlliste der SELECT-Anweisung angewendet werden.

    Das Folgende illustriert die Syntax der DISTINCT-Klausel:

    SELECT DISTINCT column1FROM table_name;
    Code language: SQL (Structured Query Language) (sql)

    In dieser Anweisung werden die Werte in der column1-Spalte verwendet, um das Duplikat auszuwerten.

    Wenn Sie mehrere Spalten angeben, wertet die DISTINCT-Klausel das Duplikat auf Basis der Kombination der Werte dieser Spalten aus.

    SELECT DISTINCT column1, column2FROM table_name;
    Code language: SQL (Structured Query Language) (sql)

    In diesem Fall wird die Kombination der Werte in den beiden Spalten column1 und column2 für die Auswertung des Duplikats verwendet.

    PostgreSQL bietet auch das DISTINCT ON (expression) an, um die „erste“ Zeile jeder Gruppe von Duplikaten mit der folgenden Syntax zu behalten:

    Die Reihenfolge der Zeilen, die von der SELECT-Anweisung zurückgegeben werden, ist nicht spezifiziert, daher ist auch die „erste“ Zeile jeder Gruppe des Duplikats nicht spezifiziert.

    Es ist eine gute Praxis, immer die ORDER BY-Klausel mit der DISTINCT ON(expression)-Anweisung zu verwenden, um die Ergebnismenge vorhersehbar zu machen.

    Beachten Sie, dass der DISTINCT ON-Ausdruck mit dem ganz linken Ausdruck in der ORDER BY-Klausel übereinstimmen muss.

    PostgreSQL SELECT DISTINCT Beispiele

    Lassen Sie uns eine neue Tabelle mit dem Namen distinct_demo erstellen und Daten in diese einfügen, um die DISTINCT-Klausel zu üben.

    Hinweis: Wie Sie eine Tabelle erstellen und Daten in eine Tabelle einfügen, erfahren Sie im folgenden Tutorial. In diesem Tutorial führen Sie die Anweisungen einfach in psql oder pgAdmin aus.

    Zunächst erstellen Sie mit der folgenden CREATE TABLE-Anweisung die distinct_demo-Tabelle, die aus drei Spalten besteht: idbcolorund fcolor.

    CREATE TABLE distinct_demo (id serial NOT NULL PRIMARY KEY,bcolor VARCHAR,fcolor VARCHAR);
    Code language: SQL (Structured Query Language) (sql)

    Zweitens fügen Sie mit der folgenden INSERT-Anweisung einige Zeilen in die Tabelle distinct_demo ein:

    Drittes, Abfrage der Daten aus der Tabelle distinct_demo mit der Anweisung SELECT:

    SELECTid,bcolor,fcolorFROMdistinct_demo ;
    Code language: SQL (Structured Query Language) (sql)

    PostgreSQL DISTINCT one column example

    Die folgende Anweisung selektiert eindeutige Werte in der Spalte bcolor aus der Tabelle t1 aus und sortiert die Ergebnismenge in alphabetischer Reihenfolge unter Verwendung der Klausel ORDER BY.

    SELECTDISTINCT bcolorFROMdistinct_demoORDER BYbcolor;
    Code language: SQL (Structured Query Language) (sql)

    PostgreSQL DISTINCT mehrere Spalten

    Die folgende Anweisung demonstriert, wie Sie die DISTINCT-Klausel auf mehrere Spalten anwenden:

    SELECTDISTINCT bcolor,fcolorFROMdistinct_demoORDER BYbcolor,fcolor;
    Code language: SQL (Structured Query Language) (sql)

    Weil wir in der SELECT DISTINCT -Klausel sowohl bcolor als auch fcolor Spalten angegeben haben, PostgreSQL kombiniert die Werte in den beiden Spalten bcolor und fcolor, um die Eindeutigkeit der Zeilen zu bewerten.

    Die Abfrage gibt die eindeutige Kombination von bcolor und fcolor aus der Tabelle distinct_demo zurück. Beachten Sie, dass die Tabelle distinct_demo zwei Zeilen mit dem red-Wert in den beiden Spalten bcolor und fcolor hat. Als wir das DISTINCT auf beide Spalten angewendet haben, wurde eine Zeile aus der Ergebnismenge entfernt, weil es sich um ein Duplikat handelt.

    PostgreSQL DISTINCT ON Beispiel

    Die folgende Anweisung sortiert die Ergebnismenge nach bcolor und fcolor, und behält dann für jede Gruppe von Duplikaten die erste Zeile in der zurückgegebenen Ergebnismenge.

    SELECTDISTINCT ON (bcolor) bcolor,fcolorFROMdistinct_demo ORDER BYbcolor,fcolor;
    Code language: SQL (Structured Query Language) (sql)

    Hier ist die Ausgabe:

    In diesem Tutorial haben Sie gelernt, wie man die PostgreSQL SELECT DISTINCT-Anweisung verwendet, um doppelte Zeilen zu entfernen, die von einer Abfrage zurückgegeben werden.

    • War dieses Tutorial hilfreich?
    • JaNein

    Previous articleWie man die Aufmerksamkeit eines Kerls bekommt, ohne mit ihm zu reden (12 Tipps, die Sie unbedingt befolgen müssen)Next article Wie Sie Ihr Android-Telefon reinigen

    Schreibe einen Kommentar Antworten abbrechen

    Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

    Neueste Beiträge

    • Sich selbst (und andere…) in Jahrbüchern online finden
    • Wie man einen Bitcoin-ASIC-Miner einrichtet
    • Chris Martin feiert Geburtstag in Disneyland mit Dakota Johnson
    • Was ist ein Superfund-Standort?
    • Angelköder-Blutwürmer haben Bienenstiche
    • Echolalie: Die Fakten jenseits von „Papageiensprache“, Skripting und Echoing
    • Herr der Fliegen Zitate
    • A Beginner’s Guide to Pegging
    • 42 Healthy Crockpot Soup Recipes
    • 3 überraschende Risiken einer schlechten Körperhaltung

    Archive

    • April 2021
    • März 2021
    • Februar 2021
    • Januar 2021
    • Dezember 2020
    • November 2020
    • Oktober 2020
    • September 2020
    • August 2020
    • Juli 2020
    • Juni 2020
    • Mai 2020
    • April 2020
    • DeutschDeutsch
    • NederlandsNederlands
    • EspañolEspañol
    • FrançaisFrançais
    • PortuguêsPortuguês
    • ItalianoItaliano
    • PolskiPolski

    Meta

    • Anmelden
    • Feed der Einträge
    • Kommentare-Feed
    • WordPress.org
    Posterity WordPress Theme