# SQL SELECT DISTINCT– So entfernen Sie doppelte Werte aus Datenabfragen

Mit SQL `SELECT DISTINCT` stellen Sie sicher, dass Sie bei Datenabfragen **nur eindeutige Datensätze und Zeilen** in den Ergebnissen erhalten. `SELECT DISTINCT` entfernt Duplikate aus ausgewählten Datensätzen und Zeilen und optimiert die Genauigkeit und Übersichtlichkeit Ihrer Datenanalyse.

## Was ist SQL `SELECT DISTINCT`?

`SELECT DISTINCT` ist ein SQL-Verarbeitungsoperator, der in Verbindung mit dem Befehl [SQL SELECT](https://www.ionos.de/digitalguide/server/konfiguration/sql-select/) zum Einsatz kommt. Der Befehl `SELECT` wählt in Datenabfragen eine oder mehrere Spalten und Datensätze aus. In Kombination mit dem Operator `DISTINCT` stellen Sie sicher, dass es in Ihrem Abfrageergebnis **nur eindeutige, unterschiedliche Zeilen** gibt und doppelte Zeilen und Werte entfernt werden. Indem Sie `SELECT DISTINCT` mit weiteren [SQL-Operatoren](https://www.ionos.de/digitalguide/server/konfiguration/sql-operatoren/) und [SQL-Befehlen](https://www.ionos.de/digitalguide/server/konfiguration/sql-befehle/) kombinieren, können Sie Ihre Abfragen nach individuellen Anforderungen anpassen.

### Unterschied zwischen SQL `SELECT DISTINCT` und `SELECT UNIQUE`

`UNIQUE` (einzigartig) und `DISTINCT` (unterscheidbar) ähneln sich in ihrer Wortbedeutung zwar, erfüllen als SQL-Operatoren jedoch **verschiedene Funktionen**. Um SQL `SELECT DISTINCT` richtig anzuwenden, sollten Sie daher wissen, wie sich beide Operatoren unterscheiden:

<table>
  <thead>
    <tr>
      <th>SQL SELECT DISTINCT</th>
      <th>SQL SELECT UNIQUE</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>Prüft ganze Datensätze auf doppelte Zeilen und Werte, entfernt Redundanzen und gibt in Ergebnissen nur unterscheidbare, eindeutige Ergebnisse aus</td>
      <td>Eignet sich, um in ausgewählten Tabellen und Spalten durch Spaltenbeschränkungen das Eintragen von Duplikaten und doppelten Werten zu unterbinden</td>
    </tr>
    <tr>
      <td>Kommt für eindeutige, aussagekräftige Ergebnisse vorrangig bei Auswertung, Analyse und Vergleich von Datensätzen zum Einsatz</td>
      <td>Kommt bei der Erstellung und Bearbeitung von Tabellen zum Einsatz, um bessere Datenintegrität ohne Redundanzen zu gewährleisten</td>
    </tr>
  </tbody>
</table>

Tipp Sie wollen schnell in die Programmier- und Datenbanksprache [SQL](https://www.ionos.de/digitalguide/server/knowhow/was-ist-sql/) einsteigen? Unsere [SQL-Einführung mit Beispielen](https://www.ionos.de/digitalguide/server/konfiguration/sql-einfuehrung-mit-beispielen/) verrät Ihnen die wichtigsten Funktionen und Grundlagen von SQL.

## Die Syntax von `SELECT DISTINCT` erklärt

Die einfache `SELECT DISTINCT`-Syntax sieht wie folgt aus:

```sql
SELECT  DISTINCT  SpalteA, SpalteB, …
FROM tabelle
```

Diese Parameter kommen zum Einsatz:

- `SELECT DISTINCT`: Der Befehl `SELECT` in Verbindung mit dem Operator `DISTINCT` wählt die Spalten aus, aus denen Sie in Ihrem Ergebnis Duplikate entfernen möchten.
- `FROM`: Wählt die Tabelle aus, in der Sie Spalten auf Duplikate durchsuchen möchten.
- `WHERE`: Mit der optionalen Klausel [SQL WHERE](https://www.ionos.de/digitalguide/server/konfiguration/sql-where/) können Sie durch zusätzliche Bedingungen, die Datenabfrage auf relevante Werte begrenzen.

## Für diese Anwendungen eignet sich `SELECT DISTINCT`

Die Einsatzmöglichkeiten für Abfragen mit SQL `SELECT DISTINCT` sind **nahezu unbegrenzt**. Sie können zum Beispiel:

- Kunden-, Bestell-, Patienten- oder Produktdaten, die mehrfach in Zeilen auftauchen, auf jeweils einen eindeutigen Eintrag reduzieren
- Anzahl der Käufe von Produkten anhand der Bestellungen und Produkt-ID zählen und eindeutig aufzeigen
- Eindeutige Patienten- oder Kundendaten abrufen
- Alle Lieferadressen oder Lieferanten in einer Region anzeigen

## Praktische Beispiele für SQL `SELECT DISTINCT`

Um zu veranschaulichen, wie SQL `SELECT DISTINCT` funktioniert, erklären wir Ihnen den Operator an zwei praktischen Anwendungsbeispielen.

### Alle Kundinnen und Kunden abrufen

Sie möchten in einer Tabelle „Bestellungen“ alle Kundinnen und Kunden eindeutig abrufen, ohne doppelte Zeilen durch Mehrfachbestellungen. Gehen Sie wie folgt vor:

```sql
SELECT  DISTINCT  Kundenname
FROM  Bestellungen
```

### Filtern von Kundinnen und Kunden aus einer bestimmten Region

Mit der `WHERE`-Klausel können Sie die Auswertung von Kundendaten **durch zusätzliche Bedingungen** näher definieren. Möchten Sie zum Beispiel in der Tabelle „Bestellungen“ alle Kundennamen abrufen, die aus Deutschland stammen, gehen Sie wie folgt vor:

```sql
SELECT  DISTINCT  Kundennamen, Land
FROM  Bestellungen
WHERE  Land  =  'Deutschland'
```

## Alternativen zu SQL `SELECT DISTINCT`

Obwohl es sich bei `SELECT DISTINCT` um einen praktischen Weg handelt, Duplikate aus Datenabfragen zu entfernen, stellt `DISTINCT` nicht immer die beste Lösung dar. Da der Operator bei großen Datensätzen relativ viele Ressourcen durch den Vergleich jeder einzelnen ausgewählten Spalte erfordert, bietet es sich an, **Alternativen mit ähnlicher Funktion** zu wählen. Dazu zählen:

- `GROUP BY`: Mit der Klausel [SQL GROUP BY](https://www.ionos.de/digitalguide/server/konfiguration/sql-group-by/) gruppieren Sie gewünschte Datensätze aus angegebenen Spalten und präzisieren sie mit weiteren Funktionen und Operatoren. -`EXISTS`: Mit [SQL EXISTS](https://www.ionos.de/digitalguide/server/konfiguration/sql-exists/) prüfen sie, ob spezifische Werte und Datensätze in einer anderen Tabelle vorliegen.
- `COUNT`: Indem Sie `DISTINCT` mit der Funktion [SQL COUNT](https://www.ionos.de/digitalguide/server/konfiguration/sql-count/) kombinieren, können Sie eindeutige Werte in Spalten zählen.
- `SELECT` + `FROM` + `WHERE`: Mit einer Subquery, also einer verschachtelten Abfrage innerhalb einer anderen Abfrage, können Sie Ihre Ergebnisse besser eingrenzen. Hierzu wählen Sie in der Subquery mit `SELECT` die betreffende Spalte aus, definieren mit FROM in welcher Tabelle sich die Spalte befindet und legen mit `WHERE` die Bedingungen fest, die Ergebnisse erfüllen sollen.


This is a markdown version of: [https://www.ionos.de/digitalguide/server/konfiguration/sql-select-distinct/](https://www.ionos.de/digitalguide/server/konfiguration/sql-select-distinct/) for AI/LLM consumption.