SQL > SQL Befehle > Order By ?

Bisher haben wir uns mit dem Abrufen von Daten aus einer Tabelle unter Verwendung der Befehle SELECT und WHERE besch?ftigt. In vielen F?llen müssen die ausgegebenen Daten jedoch auf eine bestimmte Weise sortiert werden. Dies k?nnte beispielsweise in aufsteigender oder absteigender Reihenfolge oder auf der Grundlage eines Zahlenwerts oder Textwerts geschehen. In solchen F?llen k?nnen wir das Schlüsselwort ORDER BY einsetzen.

Die Syntax für eine ORDER BY-Anweisung sieht folgenderma?en aus:

SELECT "Spalten_Name"
FROM "Tabellen_Name"
[WHERE "Bedingung"]
ORDER BY "Spalten_Name" [ASC, DESC];

Das Symbol [ ] bedeutet, dass die WHERE-Anweisung optional ist. Ist jedoch eine WHERE-Klausel vorhanden, steht sie vor der ORDER BY-Klausel. ASC bedeutet, dass die Ergebnisse in aufsteigender Reihenfolge angezeigt werden, DESC, dass sie in absteigender Reihenfolge erscheinen. Findet sich keine diesbezügliche Angabe, wird die Voreinstellung ASC verwendet.

Es besteht die M?glichkeit, nach mehr als einer Spalte zu sortieren. In diesem Fall sieht die ORDER BY-Klausel wie folgt aus:

ORDER BY "Spalten_Name1" [ASC, DESC], "Spalten_Name2" [ASC, DESC]

Wenn wir beispielsweise für beide Spalten eine aufsteigende Sortierung w?hlen, erfolgt die Ausgabe in aufsteigender Reihenfolge gem?? Spalte 1. Liegt eine Verknüpfung für den Wert von Spalte 1 vor, erfolgt die Sortierung in aufsteigender Reihenfolge nach Spalte 2.

So k?nnten wir zum Beispiel den Inhalt der Tabelle Store_Information nach Euro-Betr?gen in absteigender Reihenfolge sortieren:

Tabelle Store_Information

Store_Name Sales Txn_Date
Los Angeles 1500 05.Jan.1999
San Diego 250 07.Jan.1999
San Francisco 300 08.Jan.1999
Boston 700 08.Jan.1999

geben wir ein:

SELECT Store_Name, Sales, Txn_Date
FROM Store_Information
ORDER BY Sales DESC;

Ergebnis:

Store_Name Sales Txn_Date
Los Angeles 1500 05.Jan.1999
Boston 700 08.Jan.1999
San Francisco 300 08.Jan.1999
San Diego 250 07.Jan.1999

Zus?tzlich zum Spaltennamen l?sst sich auch mit der Spaltenposition (basierend auf der SQL-Abfrage) angeben, auf welche Spalte die ORDER BY-Klausel bezogen werden soll. Die erste Spalte ist 1, die zweite 2 usw. Im obigen Beispiel werden die gleichen Ergebnisse mit folgendem Befehl erreicht:

SELECT Store_Name, Sales, Txn_Date
FROM Store_Information
ORDER BY 2 DESC;
?

SQL Funktionen >>
?



Copyright © 2021   1keydata.com   Alle Rechte vorbehalten