Svojstvo TopValues omogućuje vam dohvaćanje određenog broja zapisa ili postotka zapisa koji zadovoljavaju kriterije koje postavite. Možda ćete, primjerice, htjeti dohvatiti 10 najvećih vrijednosti ili 25 posto najvećih vrijednosti u polju.
Napomena: Svojstvo TopValues primjenjuje se samo na upite za dodavanje, stvaranje tablice i odabir.
Postavka
Postavka svojstva TopValuescjelobrojna je vrijednost koji označava točan broj vrijednosti koji će biti dohvaćene ili broj iza kojeg je znak postotka (%) koji označava postotak zapisa koji će biti dohvaćeni. Da biste, primjerice, dobili 10 najvećih vrijednosti, postavite svojstvo TopValues na 10, a da biste dobili 10 posto najvećih vrijednosti, TopValues postavite na 10 %.
To svojstvo nije moguće izravno postaviti u kodu. Postavljen je u SQL prikaz stupca prozor Upit top n ili TOP n PERCENT u SQL naredbi.
Svojstvo TopValues možete postaviti i pomoću lista svojstava upita ili okvira Najveće vrijednosti u odjeljku Alati na kartici Dizajn.
Napomena: Svojstvo TopValues na listu svojstava upita i kartici Dizajn kombinirani je okvir koji sadrži popis vrijednosti i postotnih vrijednosti. Odaberite jednu od tih vrijednosti ili u okvir unesite bilo koju valjanu postavku.
Napomene
Svojstvo TopValues obično se koristi sa sortiranim poljima. Polje čije najveće vrijednosti želite prikazati mora biti krajnje lijevo polje u rešetki dizajna upita s potvrđenim okvirom Sortiraj. Uzlazno sortiranje vratit će zapise najmanje vrijednosti, a silazno sortiranje zapise najviše vrijednosti. Ako odredite točan broj zapisa koji će biti dohvaćeni, svi zapisi s vrijednostima koje se podudaraju s vrijednošću u zadnjem zapisu također će biti dohvaćeni.
Pretpostavimo, primjerice, da je skupina zaposlenika ostvarila sljedeće ukupne iznose prodaje.
Prodaja |
Prodavač |
90 000 |
Petković |
80 000 |
Matković |
70 000 |
Kralj |
70 000 |
Vlašić |
60 000 |
Jurković |
50 000 |
Katić |
Ako svojstvo TopValues postavite na 3 uz silazno sortiranje na polju Prodaja, Microsoft Office Access 2007 vratit će sljedeća četiri zapisa.
Prodaja |
Prodavač |
90 000 |
Petković |
80 000 |
Matković |
70 000 |
Kralj |
70 000 |
Vlašić |
Napomena: Da biste dobili najveće ili najmanje vrijednosti bez prikaza dupliciranih vrijednosti, postavite svojstvo UniqueValues na listu svojstava upita na Da.
Primjer
U sljedećem je primjeru prikazan SQL niz koji vraća deset najskupljih proizvoda u svojstvo RecordSource. Na temelju tog svojstva stvorit će se obrazac s prikazom deset najskupljih proizvoda.
Dim strGetSQL As String
strGetSQL = "SELECT TOP 10 Products.[ProductName] " _
& "AS TenMostExpensiveProducts, " _
& "Products.UnitPrice " _
& "FROM Products " _
& "ORDER BY Products.[UnitPrice] DESC;"
Me.RecordSource = strGetSQL