Puteți utiliza proprietatea TopValues pentru a returna un număr specificat de înregistrări sau un procent al înregistrărilor care îndeplinesc criteriile specificate. De exemplu, poate că doriți să returnați primele 10 valori sau valorile reprezentând 25% din toate valorile unui câmp.
Notă: Proprietatea TopValues se aplică doar la interogările de creare și de adăugare de tabele și la interogările de selectare.
Setare
Setarea proprietății TopValues este o valoare număr întreg reprezentând numărul exact de valori de returnat sau un număr urmat de semnul procent (%) care reprezintă procentul de înregistrări de returnat. De exemplu, pentru a returna primele 10 valori, setați proprietatea TopValues la 10; pentru a returna valorile reprezentând 10% din valori, setați proprietatea TopValues la 10 %.
Nu puteți seta această proprietate direct în cod. Se setează în Vizualizare SQL, în fereastra Interogare, utilizând o clauză TOP n sau TOP n PERCENT în instrucțiunea SQL.
Mai puteți seta proprietatea TopValues utilizând foaia de proprietăți a interogării sau caseta Primele valori de sub Instrumente, pe fila Proiectare.
Notă: Proprietatea TopValues din foaia de proprietăți a interogării, precum și din fila Proiectare este o casetă combo care conține o listă de valori și de procente. Puteți selecta una dintre aceste valori sau tasta orice setare validă în casetă.
Observații
De obicei, utilizați setarea de proprietate TopValues împreună cu câmpuri sortate. Câmpul pentru care doriți să afișați valorile de top ar trebui să fie câmpul cel mai din stânga care are selectată caseta Sortare în grila de proiectare a interogării. O sortare ascendentă returnează înregistrările cel mai de jos, iar o sortare descendentă înregistrările cel mai de sus. Dacă specificați să fie returnate un anumit număr de înregistrări, toate înregistrările cu valori care se potrivesc cu valoarea din ultima înregistrare sunt returnate de asemenea.
De exemplu, să presupunem că un set de angajați au următoarele totaluri de vânzări.
Vânzări |
Vânzător |
90.000 |
Stănescu |
80.000 |
Costache |
70.000 |
Niculescu |
70.000 |
Olteanu |
60.000 |
Preda |
50.000 |
Milea |
Dacă setați proprietatea TopValues la 3 cu o sortare descendentă în câmpul Vânzări, Microsoft Office Access 2007 returnează următoarele patru înregistrări.
Vânzări |
Vânzător |
90.000 |
Stănescu |
80.000 |
Costache |
70.000 |
Niculescu |
70.000 |
Olteanu |
Notă: Pentru a returna valorile cel mai de sus sau cel mai de jos fără a afișa valori dublate, setați proprietatea UniqueValues din foaia de proprietăți a interogării la Da.
Exemplu
Următorul exemplu atribuie un șir de caractere SQL care returnează primele 10 cele mai scumpe produse la proprietatea RecordSource pentru un formular care va afișa primele 10 cele mai scumpe produse.
Dim strGetSQL As String
strGetSQL = "SELECT TOP 10 Products.[ProductName] " _ & "AS TenMostExpensiveProducts, " _ & "Products.UnitPrice " _ & "FROM Products " _ & "ORDER BY Products.[UnitPrice] DESC;" Me.RecordSource = strGetSQL