Die Klausel ORDER BY gibt die Reihenfolge der Zeilen einer Ergebnistabelle für eine SQL-Anweisung an.
Vorbereitende Schritte
Wenn mehr als eine Sortierspezifikation angegeben wird, werden die Zeilen nach den Werten der ersten angegebenen Sortierspezifikation angeordnet, anschließend nach den Werten der zweiten angegebenen Sortierspezifikation etc.
Innerhalb der Anweisung FULLSELECT können Sie keine Klausel ORDER BY für eine Anweisung SELECT verwenden. Die Klausel ORDER BY gilt für die endgültige Ergebnismenge aus der Anweisung FULLSELECT. Sie können entweder nach einer einzelnen oder nach mehreren Spalten sortieren.
Zum Sortieren nach Spalten in einer Anweisung FULLSELECT, die denselben Ordinalwert aufweisen, sich jedoch in anderen untergeordneten SELECT-Anweisungen befinden, müssen die Spalten denselben Namen haben.
Wenn die Spalten unterschiedliche Namen in den entsprechenden untergeordneten SELECT-Anweisungen haben, müssen Sie jeder der Spalten denselben Aliasnamen zuweisen.
Stellen Sie vor dem Erstellen von ORDER BY-Klauseln sicher, dass die folgenden Voraussetzungen erfüllt sind:
- Die FULLSELECT-Anweisung muss im SQL-Abfrageerstellungsprogramm geöffnet sein.
- Die Tabellen müssen für die Anweisung FULLSELECT angegeben sein.
Vorgehensweise
Gehen Sie wie folgt vor, um eine Klausel ORDER BY für eine mehrspaltige Sortierung in einer Anweisung FULLSELECT im SQL-Abfrageerstellungsprogramm zu erstellen:
- Wenn die Spalten, nach denen sortiert werden soll, unterschiedliche Namen in verschiedenen SELECT-Anweisungen haben, geben Sie einen Aliasnamen für die Spalten an. Verwenden Sie den gleichen Aliasnamen für jede der Spalten.
- Klicken Sie in der Modellstruktursicht auf eine untergeordnete Anweisung SELECT, die ein Spalte enthält, nach der sortiert werden soll.
- Wählen Sie die Kontrollkästchen der Spalten, die Sie in der Anweisung verwenden wollen, im Tabellenteilfenster des SQL-Abfrageerstellungsprogramms aus.
- Wählen Sie die Spalte, nach der sortiert werden soll, auf der Seite Spalten im Entwurfsteilfenster des SQL-Abfrageerstellungsprogramms aus. Klicken Sie dann doppelt auf die Zelle Aliasname.
- Geben Sie einen Aliasnamen für die Spalte ein und drücken Sie anschließend die Eingabetaste.
- Wählen Sie die Anweisung SELECT des Stammknotens oder einen Knoten UNION, der eine untergeordnete Anweisung FULLSELECT darstellt, in der Modellstruktursicht aus.
- Klicken Sie doppelt auf die erste Zelle unter der Überschrift Spalte auf der Seite Spalten im Entwurfsteilfenster des SQL-Abfrageerstellungsprogramms, um die Liste verfügbarer Spalten zu öffnen.
- Wählen Sie die erste Spalte aus, nach der sortiert werden soll. Dies ist die erste Spalte, der Sie den Aliasnamen hinzugefügt haben.
- Klicken Sie doppelt auf die Zelle Sortiertyp, wählen Sie entweder Aufsteigend, Absteigend oder Standard aus und drücken Sie dann die Eingabetaste. Die Option Standard gibt an, dass eine Sortierung erforderlich ist, aber keine SQL-Quelle für den Sortiertyp angezeigt werden soll. Es wird der Standardsortiertyp für Ihr Datenbankprodukt verwendet.
- Klicken Sie doppelt auf die Zelle unter der Überschrift Sortierreihenfolge.
- Wählen Sie die Zahl aus, die der Reihenfolge entspricht, in der die Ergebnisse sortiert werden sollen, und drücken Sie anschließend die Eingabetaste.
- Wiederholen Sie diese Schritte mit anderen Spalten.