Direkt zum Inhalt
Urkunden
FunktionenAusdrückeSchlüsselwörterAussagenKlauseln

MySQL DISTINCT Schlüsselwort

Das Schlüsselwort DISTINCT wird in MySQL verwendet, um doppelte Datensätze aus den Ergebnissen einer SELECT Abfrage zu entfernen. Sie stellt sicher, dass die Abfrage nur eindeutige Werte in den angegebenen Spalten zurückgibt.

Verwendung

Das Schlüsselwort DISTINCT wird verwendet, wenn du sicherstellen willst, dass die Abfrageergebnisse nur eindeutige Einträge enthalten und alle doppelten Zeilen ausgeschlossen werden. Es wird direkt nach dem Schlüsselwort SELECT platziert.

SELECT DISTINCT column1, column2, ...
FROM table_name;

In dieser Syntax wird DISTINCT auf die angegebene(n) Spaltenkombination(en) angewendet, um sicherzustellen, dass nur eindeutige Kombinationen von Werten zurückgegeben werden.

Beispiele

1. Grundlegende Verwendung

SELECT DISTINCT country
FROM customers;

Diese Abfrage ruft eine Liste eindeutiger Länder aus der Tabelle customers ab und eliminiert dabei alle Duplikate.

2. Mehrspaltig

SELECT DISTINCT first_name, last_name
FROM employees;

In diesem Beispiel stellt das Schlüsselwort DISTINCT sicher, dass die Kombination aus first_name und last_name in den Ergebnissen eindeutig ist. Es können immer noch Zeilen mit demselben Vornamen, aber unterschiedlichen Nachnamen enthalten sein und umgekehrt.

3. Kombiniert mit WHERE-Klausel

SELECT DISTINCT category
FROM products
WHERE price > 50;

Hier wird das Schlüsselwort DISTINCT mit einer WHERE Klausel verwendet, um einzigartige Produktkategorien zu finden, bei denen der Preis größer als 50 ist, um sowohl die Spezifität als auch die Einzigartigkeit der Ergebnisse zu verbessern.

4. Kombiniert mit ORDER BY

SELECT DISTINCT department
FROM employees
ORDER BY department;

Dieses Beispiel zeigt, wie du DISTINCT mit ORDER BY verwendest, um eindeutige Abteilungsnamen abzurufen und eine bestimmte Reihenfolge in den Ergebnissen beizubehalten.

Tipps und bewährte Praktiken

  • Verwende DISTINCT mit Vorsicht. DISTINCT entfernt zwar Duplikate, kann aber die Leistung beeinträchtigen, besonders bei großen Datensätzen.
  • Auf die erforderlichen Spalten anwenden. Verwende DISTINCT nur für Spalten, bei denen Eindeutigkeit erforderlich ist, um unnötigen Overhead zu vermeiden.
  • Kombiniere mit ORDER BY. Wenn nötig, kombiniere DISTINCT mit ORDER BY, um eine bestimmte Reihenfolge in den Ergebnissen zu erhalten.
  • Achte auf NULLs. DISTINCT behandelt NULL Werte als gleichwertig, so dass nur ein NULL für jede Spaltenkombination zurückgegeben wird, was sich auf die Ergebnisse auswirken kann, wenn mehrere NULLs in mehreren Spalten vorhanden sind.

SQL Upskilling für Einsteiger

Erwerbe die SQL-Kenntnisse, um mit deinen Daten zu interagieren und sie abzufragen.
Kostenloses Lernen beginnen