Met ORDER BY
is het mogelijk om te resultset te sorteren op een bepaalde kolom. De sortering kan zowel oplopend (ASC
) als aflopend (DESC
) worden gesorteerd.
De syntax voor ORDER BY
ziet er als volgt uit.
SELECT * FROM Tabelnaam ORDER BY kolomnaam ASC|DESC
Het is ook mogelijk om op meerdere kolommen te sorteren.
SELECT * FROM Tabelnaam ORDER BY kolomnaam1 ASC|DESC, kolomnaam2 ASC|DESC
Er wordt dan eerst gesorteerd op de eerste kolom, vervolgens wordt er gesorteerd op de tweede kolom.
ORDER BY
in de praktijk
De volgende dataset is de inhoud van de tabel Persoon.
id, voornaam, achternaam, woonplaats 1, 'Henk', 'Janssen', 'Amsterdam' 2, 'Petra', 'de klomp', 'Nijmegen' 3, 'Sjoerd', 'Vermeulen', 'Maastricht' 4, 'Mieke', 'Sterk', 'Amsterdam'
Als we de gegevens oplopend op achternaam willen sorteren kunnen we de volgende query gebruiken:
SELECT * FROM Persoon ORDER BY achternaam ASC
Resultaat 2, 'Petra', 'de klomp', 'Nijmegen' 1, 'Henk', 'Janssen', 'Amsterdam' 4, 'Mieke', 'Sterk', 'Amsterdam' 3, 'Sjoerd', 'Vermeulen', 'Maastricht'
Uiteraard kunnen we ook aflopend op achternaam sorteren:
SELECT * FROM Persoon ORDER BY achternaam DESC
Resultaat 3, 'Sjoerd', 'Vermeulen', 'Maastricht' 4, 'Mieke', 'Sterk', 'Amsterdam' 1, 'Henk', 'Janssen', 'Amsterdam' 2, 'Petra', 'de klomp', 'Nijmegen'
We gaan nu sorteren op de woonplaats oplopend en de achternaam aflopend.
SELECT * FROM Persoon ORDER BY woonplaats ASC, achternaam DESC
Resultaat 4, 'Mieke', 'Sterk', 'Amsterdam' 1, 'Henk', 'Janssen', 'Amsterdam' 3, 'Sjoerd', 'Vermeulen', 'Maastricht' 2, 'Petra', 'de klomp', 'Nijmegen'