In MySQL wird das Schlüsselwort „distinct“ verwendet, um doppelte Daten in einem oder mehreren Feldern in der Datentabelle zu filtern, und es muss nur ein Datenelement zusammen mit verwendet werden SELECT-Anweisung, Syntax „SELECT DISTINCT Spalte1, Spalte2, ... FROM Tabellenname;“.
Die Betriebsumgebung dieses Tutorials: Windows7-System, MySQL8-Version, Dell G3-Computer.
Wenn Sie die SELECT-Anweisung verwenden, um eine einfache Datenabfrage in MySQL durchzuführen, werden alle übereinstimmenden Datensätze zurückgegeben. Wenn für einige Felder in der Tabelle keine eindeutigen Einschränkungen gelten, können diese Felder doppelte Werte aufweisen. Um eindeutige Daten abzufragen, stellt MySQL das Schlüsselwort DISTINCT bereit. Die Hauptfunktion des Schlüsselworts
DISTINCT besteht darin, doppelte Daten in einem oder mehreren Feldern der Datentabelle zu filtern und nur ein Datenelement an den Benutzer zurückzugeben. Das Syntaxformat des Schlüsselworts
DISTINCT lautet:
SELECT DISTINCT column1, column2, ... FROM table_name;
wobei „column
“ der Name eines oder mehrerer Felder ist, die doppelte Datensätze entfernen müssen. Wenn es mehrere Felder gibt, trennen Sie diese durch Kommas.
Bei der Verwendung des Schlüsselworts DISTINCT müssen Sie folgende Punkte beachten:
Das Schlüsselwort DISTINCT kann nur in einer SELECT-Anweisung verwendet werden.
Beim Deduplizieren eines oder mehrerer Felder muss das Schlüsselwort DISTINCT an der Spitze aller Felder stehen.
Wenn nach dem Schlüsselwort DISTINCT mehrere Felder vorhanden sind, werden die mehreren Felder kombiniert und dedupliziert. Das heißt, nur wenn die Kombination mehrerer Felder genau gleich ist, werden sie dedupliziert.
Demo-Datenbank
Das Folgende ist eine Auswahl der Tabelle „Kunden“ in der Northwind-Beispieldatenbank:
CustomerID | CustomerName | ContactName | Ad Kleid | Stadt | Postleitzahl | Land 57 na Trujillo Emparedados y helados |
---|---|---|---|---|---|---|
Avda. de la Constituciуn 2222 | México D.F. | 05021 | Mexiko | 3 | Antonio Moreno Taquerña | |
Mataderos 2312 | México D.F. | 05023 | Mexico | 4 | Around the Horn | |
120 Hanover Sq. | London | WA1. 1DP | UK | 5 | Berglunds snabbkцp | |
Berguvsv дgen 8 | Luleе | S-958 22 | Schweden | Keine SELECT-Instanz mit DISTINCT | ||
Die folgende SQL-Anweisung wählt aus ALLE (einschließlich Duplikate) Werte aus dem Spalte „Land“ in der Tabelle „Kunden“: | SELECT DISTINCT-Instanz | 1. Wählen Sie nur DISTINCT-Werte aus der Spalte „Land“ in der Tabelle „Kunden“ aus: | SELECT DISTINCT Country FROM Customers; Nach dem Login kopieren |