SQLTutorial.nl
Order by
Met ORDER BY kunnen gegeven van een bepaalde kolom gesorteerd worden. Standaard wordt het resultaat van de eerste kolom oplopend gesorteerd. Er zijn twee manieren waarop gesorteerd kan worden:
| Operator | Betekenis | Beschrijving |
|---|---|---|
| ASC | ascending | Gegevens aflopend sorteren |
| DESC | descending | Gegevens oplopend sorteren |
De syntax voor het sorteren ziet er als volgt uit:
SELECT kolomnaam
FROM tabelnaam
ORDER BY kolomnaam ASC|DESC
FROM tabelnaam
ORDER BY kolomnaam ASC|DESC
Voorbeeld
De "Persoon" tabel zie er als volgt uit:
| id | Voornaam | Achternaam | Woonplaats | Geslacht |
|---|---|---|---|---|
| 1 | Henk | Janssen | Amsterdam | M |
| 2 | Petra | de klomp | Nijmegen | V |
| 3 | Sjoerd | Vermeulen | Amsterdam | M |
| 4 | Mieke | Sterk | Amsterdam | V |
Oplopend | ASC
We willen de gegevens van de persoon tabel oplopend op achternaam sorteren.
SELECT *
FROM persoon
ORDER BY Achternaam ASC
FROM persoon
ORDER BY Achternaam ASC
| id | Voornaam | Achternaam | Woonplaats | Geslacht |
|---|---|---|---|---|
| 2 | Petra | de klomp | Nijmegen | V |
| 1 | Henk | Janssen | Amsterdam | M |
| 4 | Mieke | Sterk | Amsterdam | V |
| 3 | Sjoerd | Vermeulen | Amsterdam | M |
Aflopend | DESC
De gegevens aflopend gesorteerd op achternaam.
SELECT *
FROM persoon
ORDER BY Achternaam DESC
FROM persoon
ORDER BY Achternaam DESC
| id | Voornaam | Achternaam | Woonplaats | Geslacht |
|---|---|---|---|---|
| 3 | Sjoerd | Vermeulen | Amsterdam | M |
| 4 | Mieke | Sterk | Amsterdam | V |
| 1 | Henk | Janssen | Amsterdam | M |
| 2 | Petra | de klomp | Nijmegen | V |
Het is mogelijk om op meerdere kolommen te sorteren. In onderstaand voorbeeld wordt eerst oplopend gesorteerd op woonplaats en vervolgens op achternaam.
SELECT *
FROM persoon
ORDER BY woonplaats ASC, achternaam ASC
FROM persoon
ORDER BY woonplaats ASC, achternaam ASC
| id | Voornaam | Achternaam | Woonplaats | Geslacht |
|---|---|---|---|---|
| 1 | Henk | Janssen | Amsterdam | M |
| 4 | Mieke | Sterk | Amsterdam | V |
| 3 | Sjoerd | Vermeulen | Amsterdam | M |
| 2 | Petra | de klomp | Nijmegen | V |
De sorteervolgorde hoeft niet voor beide kolomen gelijk te zijn. In onderstaand voorbeeld wordt oplopend gesorteerd op woonplaats en aflopend op achternaam.
SELECT *
FROM persoon
ORDER BY woonplaats ASC,
achternaam DESC
FROM persoon
ORDER BY woonplaats ASC,
achternaam DESC
| id | Voornaam | Achternaam | Woonplaats | Geslacht |
|---|---|---|---|---|
| 3 | Sjoerd | Vermeulen | Amsterdam | M |
| 4 | Mieke | Sterk | Amsterdam | V |
| 1 | Henk | Janssen | Amsterdam | M |
| 2 | Petra | de klomp | Nijmegen | V |