Einführung in die ORDER BY-Klausel in SQL

Mit der ORDER BY-Klausel in SQL können wir unsere Daten abhängig von den Spalten unserer Tabellen in aufsteigender oder absteigender Reihenfolge kategorisieren. ORDER BY ist das Schlüsselwort, das in unserer Abfrage zum Sortieren der Daten verwendet wird. Standardmäßig kategorisieren einige Datenbanken die von der Abfrage zurückgegebenen Ergebnisse in aufsteigender Reihenfolge. Um die in den Datensätzen vorhandenen Daten in absteigender Reihenfolge zu sortieren, verwenden wir in unserer Abfrage das Schlüsselwort DESC. Wir haben auch das Schlüsselwort ASC, um Daten in aufsteigender Reihenfolge zu kategorisieren, obwohl wir es meistens aufgrund der Standardeinstellungen der Datenbank nicht verwenden.

Parameter der ORDER BY-Klausel in SQL

  • Spaltenname: Dies gibt den Spaltennamen an, den wir abrufen möchten, basierend auf dem die Daten angeordnet werden sollen.
  • Tabellenname: Gibt den Namen der Tabelle an, aus der die Datensätze abgerufen werden sollen. In diesem Parameter muss mindestens ein Tabellenname enthalten sein.
  • WHERE-Bedingung: Dies ist ein optionaler Parameter. Die WHERE-Klausel enthält die Bedingungen, die wir erfüllen müssen, damit die Daten ausgewählt werden können.
  • ASC : Mit diesem Schlüsselwort werden die Spaltendaten in aufsteigender Reihenfolge sortiert. Wenn kein Schlüsselwort angegeben ist, werden die Daten standardmäßig in aufsteigender Reihenfolge sortiert.
  • DESC: Mit diesem Schlüsselwort werden die Spaltendaten in absteigender Reihenfolge sortiert.
  • |: Dies ist nur ein Indikator für "OR", da wir entweder ASC oder DESC in unserer Abfrage entsprechend für die Ergebnisse verwenden sollen.

ORDER BY-Klausel

Die Syntax von ORDER BY lautet:

SELECT column_name(s)
FROM table_name(s)
(WHERE condition) (ORDER BY column1, column2, .. columnN) (ASC | DESC);

Syntax zum Sortieren von Daten nach einer einzelnen Spalte

Um die Daten der Tabelle nach einer einzelnen Spalte in aufsteigender oder absteigender Reihenfolge zu sortieren, können Sie entweder die Schlüsselwörter ASC oder DESC verwenden. In unserem Beispiel sortieren wir die Daten in aufsteigender Reihenfolge und verwenden dabei das Schlüsselwort ASC.

Syntax

SELECT * FROM table_name ORDER BY column_name ASC

Die Syntax zum Sortieren von Daten nach mehreren Spalten

Um die Daten der Tabelle nach mehreren Spalten in aufsteigender oder absteigender Reihenfolge zu sortieren, können Sie entweder die Schlüsselwörter ASC oder DESC verwenden. Um die verschiedenen Spalten zu erwähnen, nach denen die Daten sortiert werden, müssen die Namen der Spalten angegeben werden, die durch den Komma-Operator (, ) getrennt sind. In unserem Beispiel sortieren wir die Daten in aufsteigender Reihenfolge und verwenden dabei das Schlüsselwort ASC.

Syntax

SELECT * FROM table_name ORDER BY column1 ASC, column2 ASC

Beispiele für die ORDER BY-Klausel

Schauen wir uns verschiedene Beispiele an, um die ORDER BY-Klausel besser zu verstehen.

1. Beispiel zum Sortieren der Ergebnisse in aufsteigender Reihenfolge

Um die Ergebnisse in aufsteigender Reihenfolge zu kategorisieren, können wir das Schlüsselwort ASC verwenden. Wenn kein Schlüsselwort (ASC oder DESC) angegeben wurde, ist die Standardsortierreihenfolge aufsteigend. Lassen Sie uns dies anhand eines Beispiels verstehen. Wir haben eine Mitarbeitertabelle.

Mitarbeiter-IDEmployeeLastNameEmployeeFirstNameEmailID
001 Donald Jo
002 Schmied Jamie
003 Jones Amy
004 Reynolds Andy
005 Thomas Ausfall
006 Braun Dan

Wenn wir versuchen, die Ergebnisse in aufsteigender Reihenfolge des Nachnamens des Mitarbeiters anzuordnen, können wir die folgende Anweisung verwenden, und das folgende Ergebnis wird in der folgenden Tabelle angezeigt.

SELECT *
FROM Employee
ORDER BY EmployeeLastName;

Ergebnis

Mitarbeiter-IDEmployeeLastNameEmployeeFirstNameEmailID
006 Braun Dan
001 Donald Jo
003 Jones Amy
004 Reynolds Andy
002 Schmied Jamie
005 Thomas Ausfall

In diesem Beispiel werden alle Datensätze aus der Employee- Tabelle in aufsteigender Reihenfolge nach dem Feld EmployeeLastName sortiert zurückgegeben. Wir können auch das Schlüsselwort ASC wie folgt verwenden, um das gleiche Ergebnis zu erhalten.

SELECT EmployeeID, EmployeeLastName
FROM Employee
WHERE EmployeeID '003'
ORDER BY 1 DESC;

2. Beispiel zum Sortieren der Ergebnisse in absteigender Reihenfolge

Wir verwenden das Schlüsselwort DESC, wenn wir unsere Daten in unserer ORDER BY-Klausel in absteigender Reihenfolge sortieren möchten. Lassen Sie uns dies anhand eines Beispiels verstehen. Wir haben die gleiche Tabelle Employee mit den folgenden Daten.

Mitarbeiter-IDEmployeeLastNameEmployeeFirstNameEmailID
001 Donald Jo
002 Schmied Jamie
003 Jones Amy
004 Reynolds Andy
005 Thomas Ausfall
006 Braun Dan

Wir brauchen nur Mitarbeiter, deren EmployeeID größer als 2 ist, und wir brauchen unsere Daten in absteigender Reihenfolge sortiert. Wir verwenden die folgende SQL-Anweisung für dasselbe und erhalten die Ergebnistabelle mit nur 4 Datensätzen.

SELECT *
FROM Employee
WHERE EmployeeID > 002
ORDER BY EmployeeID DESC;

Ergebnis:

Mitarbeiter-ID EmployeeLastName EmployeeFirstName E-Mail-ID
006 Braun Dan
005 Thomas Ausfall
004 Reynolds Andy
003 Jones Amy

3. Beispiel zum Sortieren der Ergebnisse nach ihrer relativen Position

Wir können unsere Daten auch nach der relativen Position der Spalten anordnen, wobei 1 das erste Feld, 2 das zweite Feld, 3 das dritte Feld usw. darstellt. Versuchen wir, die Daten in unserer Mitarbeitertabelle nach relativen Positionen zu ordnen.

Mitarbeiter-IDEmployeeLastNameEmployeeFirstNameEmail
001 Donald Jo
002 Schmied Jamie
003 Jones Amy
004 Reynolds Andy
005 Thomas Ausfall
006 Braun Dan

Mit der folgenden SQL-Anweisung können wir die Daten in absteigender Reihenfolge der EmployeeID anordnen. Wir haben auch behauptet, dass wir nur zwei Spalten aus der Tabelle benötigen, nämlich EmployeeID und EmployeeLastName, und die WHERE-Klausel verwenden, um zu erwähnen, dass wir keine Zeile mit der EmployeeID 003 wollen.

SELECT EmployeeID, EmployeeLastName
FROM Employee
WHERE EmployeeID '003'
ORDER BY 1 DESC;

Ergebnis

Mitarbeiter-IDEmployeeLastName
006 Braun
005 Thomas
004 Reynolds
002 Schmied
001 Donald

Da die Spalte an Position 1 EmployeeID lautet, wird die Ergebnismenge nach EmployeeID sortiert.

Fazit

In SQL gibt die SELECT-Anweisung keine Daten in einer bestimmten Reihenfolge zurück. Um eine bestimmte Bestellung zu garantieren, verwenden wir die ORDER BY-Klausel. ORDER BY sortiert nach einer oder mehreren Spalten. Datensätze werden in aufsteigender oder absteigender Reihenfolge zurückgegeben. Wenn kein ASC- oder DESC-Schlüsselwort angegeben wurde, werden die Ergebnisse in aufsteigender Reihenfolge kategorisiert.

Empfohlener Artikel

Dies war eine Anleitung zur ORDER BY-Klausel in SQL. Hier diskutieren wir die Parameter und verschiedene Beispiele der ORDER BY-Klausel zusammen mit der Syntax. Sie können auch unsere anderen Artikelvorschläge durchgehen, um mehr zu erfahren -

  1. Vorteile von NoSQL
  2. SQL-Verwaltungstools
  3. T-SQL-Zeichenfolgenfunktionen
  4. PostgreSQL-Datentypen
  5. Verschiedene Arten von SQL-Daten mit Beispielen