Manchmal ist es günstig, die Informationen in einer spezifischen Reihenfolge zurückgeben zu lassen. Mit der Klausel ORDER BY können Sie die Informationen anhand der Werte in einer oder mehreren Spalten sortieren.
Die folgende Anweisung zeigt die Mitarbeiter der Abteilung 84 sortiert nach der Länge der Betriebszugehörigkeit (Spalte YEARS) an:
SELECT NAME, JOB, YEARS FROM STAFF WHERE DEPT = 84 ORDER BY YEARS
Diese Anweisung erzeugt das folgende Ergebnis:
NAME JOB YEARS --------- ----- ------ Davis Sales 5 Gafney Clerk 5 Edwards Sales 7 Quill Mgr 10
Die Klausel ORDER BY wird als letzte Klausel der gesamten Anweisung SELECT angegeben. Bei den in dieser Klausel angegebenen Spalten kann es sich um Ausdrücke oder um beliebige Spalten der Tabelle handeln. Die Spaltennamen in der Klausel ORDER BY müssen nicht in der SELECT-Liste angegeben sein.
Die Zeilen können in aufsteigender oder in absteigender Reihenfolge sortiert werden. Hierzu geben Sie in der Klausel ORDER BY explizit ASC (=aufsteigend) oder DESC (=absteigend) an. Enthält die Klausel keine dieser Angaben, werden die Zeilen automatisch in aufsteigender Reihenfolge sortiert. Die folgende Anweisung zeigt die Mitarbeiter der Abteilung 84 nach der Länge der Betriebszugehörigkeit, und zwar in absteigender Reihenfolge sortiert, an:
SELECT NAME, JOB, YEARS FROM STAFF WHERE DEPT = 84 ORDER BY YEARS DESC
Diese Anweisung erzeugt das folgende Ergebnis:
NAME JOB YEARS --------- ----- ------ Quill Mgr 10 Edwards Sales 7 Davis Sales 5 Gafney Clerk 5
Sie können Zeilen nach Zeichenwerten wie auch nach numerischen Werten sortieren. Die folgende Anweisung zeigt die Mitarbeiter der Abteilung 84 in alphabetischer Reihenfolge der Namen an:
SELECT NAME, JOB, YEARS FROM STAFF WHERE DEPT = 84 ORDER BY NAME
Diese Anweisung erzeugt das folgende Ergebnis:
NAME JOB YEARS --------- ----- ------ Davis Sales 5 Edwards Sales 7 Gafney Clerk 5 Quill Mgr 10