U kunt de eigenschap TopValues gebruiken om een bepaald aantal records of percentage records te retourneren dat aan de door u opgegeven criteria voldoet. Zo kunt u bijvoorbeeld de tien hoogste waarden of de bovenste 25 procent van alle waarden in een veld laten retourneren.
Opmerking: De eigenschap TopValues is alleen van toepassing op toevoegquery's, tabelmaakquery's en selectiequery's.
Instelling
De eigenschap TopValues is een geheel getal dat het exacte aantal waarden aangeeft dat moet worden geretourneerd of een getal gevolgd door een procentteken (%) dat het percentage records aangeeft dat moet worden geretourneerd. Als u bijvoorbeeld de top 10 waarden wilt retourneren, stelt u de eigenschap TopValues in op 10; als u de bovenste 10 procent van de waarden wilt retourneren, stelt u de eigenschap TopValues in op 10%.
U kunt deze eigenschap niet rechtstreeks in code instellen. De eigenschap wordt ingesteld in de SQL-weergave van het queryvenster door middel van de component TOP n of TOP n PERCENT in de SQL-instructie.
U kunt de eigenschap TopValues ook instellen met behulp van het eigenschappenvenster van de query of in het vak Top-waarden onder Hulpmiddelen op het tabblad Ontwerp.
Opmerking: De eigenschap TopValues in het eigenschappenvenster van de query en op het tabblad Ontwerp is een keuzelijst met invoervak die een lijst met waarden en percentages bevat. U kunt een van deze waarden selecteren, maar u kunt ook een geldige instelling in het vak typen.
Opmerkingen
Normaal gesproken gebruikt u de instelling van de eigenschap TopValues samen met gesorteerde velden. Het veld waarvoor u de hoogste waarden wilt weergeven, moet het meest linkse veld zijn waarin het vak Sorteren is geselecteerd in het queryontwerpraster. Een oplopende sortering retourneert de onderste records en een aflopende sortering retourneert de bovenste records. Als u opgeeft dat een specifiek aantal records moet worden geretourneerd, worden ook alle records met waarden die overeenkomen met de waarde in de laatste record geretourneerd.
Stel dat bij een groep werknemers de volgende verkooptotalen horen.
Verkoop |
Verkoper |
90.000 |
Van Dorssen |
80.000 |
Westerink |
70.000 |
De Crom |
70.000 |
Van Groesen |
60.000 |
Veenhuizen |
50.000 |
Van Eeuwijk |
Als u de eigenschap TopValues instelt op 3 met aflopend sorteren voor het veld Verkoop, retourneert Microsoft Office Access 2007 de volgende vier records.
Verkoop |
Verkoper |
90.000 |
Van Dorssen |
80.000 |
Westerink |
70.000 |
De Crom |
70.000 |
Van Groesen |
Opmerking: Als u de bovenste of onderste waarden wilt retourneren zonder dubbele waarden weer te geven, stelt u de eigenschap UniqueValues in het eigenschappenvenster van de query in op Ja.
Voorbeeld
In het volgende voorbeeld wordt een SQL-tekenreeks die de tien duurste producten retourneert, toegewezen aan de eigenschap RecordSource voor een formulier waarin de tien duurste producten worden weergegeven.
Dim strGetSQL As String
strGetSQL = "SELECT TOP 10 Products.[ProductName] " _ & "AS TenMostExpensiveProducts, " _ & "Products.UnitPrice " _ & "FROM Products " _ & "ORDER BY Products.[UnitPrice] DESC;" Me.RecordSource = strGetSQL