Op de Access 2000 Noordenwind (NL versie,

) database doet de volgende query het prima:
code:
1
2
3
| SELECT TOP 10 [orders].[Orderdatum]
FROM orders
ORDER BY [orders].[Orderdatum] DESC; |
Daarbij is orders.Orderdatum gewoon een Datum/Tijd kolom.
In de help staat hhet volgende stukje over TOP:
TOP n [PERCENT]
Met dit predikaat wordt alleen dat aantal records als resultaat gegeven dat zich bovenin of onderin een bereik bevindt dat is gespecificeerd door een component ORDER BY. Stel dat u de namen wilt opvragen van de 25 beste leerlingen uit de examenklas van 1994:
code:
1
2
3
4
5
| SELECT TOP 25
Voornaam, Achternaam
FROM Leerlingen
WHERE Examenjaar = 1994
ORDER BY GemiddeldeEindcijfer DESC; |
Als u de component ORDER BY achterwege laat, geeft de query als resultaat een willekeurige reeks van 25 records uit de tabel Leerlingen die voldoen aan de component WHERE.
Het predikaat TOP maakt geen keuze tussen gelijke waarden. Als de vijfentwintigste en zesentwintigste record in het vorige voorbeeld hetzelfde gemiddelde eindcijfer bevatten, geeft de query 26 records als resultaat.
U zou ook het gereserveerde woord PERCENT kunnen gebruiken. Daarmee kunt u een percentage opvragen van de records bovenin of onderin een bereik dat is gespecificeerd met een component ORDER BY. Stel dat u geen overzicht wilt van de 25 beste studenten, maar tien procent van de slechtste leerlingen in deze klas:
code:
1
2
3
4
5
| SELECT TOP 10 PERCENT
Voornaam, Achternaam
FROM Leerlingen
WHERE Examenjaar = 1994
ORDER BY GemiddeldeEindcijfer ASC; |
Het predikaat ASC geeft aan dat de onderste waarden als resultaat worden gegeven. De waarde achter TOP moet een positieve Integer zijn.
TOP heeft geen invloed op de mogelijkheid tot bijwerken van de query.
Ik denk dat met name de informatie in de vet gedrukte paragraaf van belang kan zijn voor jou.
Als je namelijk alleen een datum (en dus geen tijd) opslaat in een dergelijke kolom, en je vraagt de TOP 5 op, terwijl er 25 records zijn van die dag, dan zul je dus 25 records terugkrijgen, en niet de verwachte 5 records.
HTH