Puteți utiliza funcțiile DFirst și DLast pentru a returna o înregistrare aleatorie dintr-un anumit câmp dintr-un tabel sau dintr-o interogare atunci când aveți nevoie doar de o valoare din acel câmp. Utilizați funcțiile DFirst și DLast într-o macrocomandă, modul, expresie interogare sau control calculat într-un formular sau raport.
Sintaxă
DFirst ( expr , domeniu [, criterii] )
DLast ( expr , domeniu [, criterii] )
Funcțiile DFirst și DLast au următoarele argumente:
Argument |
Descriere |
expr |
Obligatoriu. O expresie care identifică câmpul din care doriți să găsiți prima sau ultima valoare. Poate fi un expresie șir de identificare a unui câmp dintr-un tabel sau dintr-o interogare sau o expresie care efectuează un calcul pentru datele din acel câmp. În exPR, puteți include numele unui câmp dintr-un tabel, un control dintr-un formular, o constantă sau o funcție. Dacă expr include o funcție, aceasta poate fi predefinită sau definită de utilizator, dar nu un alt agregat de domeniu sau funcție agregată SQL. |
domeniu |
Obligatoriu. O expresie șir care identifică setul de înregistrări ce constituie domeniul. |
criterii |
Opțional. O expresie șir utilizată pentru a restricționa zona de date pe care se efectuează funcția DFirst sau DLast . De exemplu, criteriile sunt deseori echivalente cu clauza WHERE într-o expresie SQL, fără cuvântul unde. Dacă criteriile sunt omise, funcțiile DFirst și DLast evaluează expr în raport cu întregul domeniu. Orice câmp care este inclus în criterii trebuie să fie, de asemenea, un câmp în domeniu; în caz contrar, funcțiile DFirst și DLast returnează un Null. |
Observații
Notă: Dacă doriți să returnați prima sau ultima înregistrare dintr-un set de înregistrări (un domeniu ), trebuie să creați o interogare sortată fie ascendentă, fie descendentă și setați proprietatea TopValues la 1. Pentru mai multe informații, consultați subiectul proprietății TopValues . Dintr-un modul Visual Basic for Applications (VBA), puteți, de asemenea, să creați un obiect ADO Recordset și să utilizați metoda MoveFirst sau MoveLast pentru a returna prima sau ultima înregistrare dintr-un set de înregistrări.
Exemple
Expresie |
Rezultatele |
Selectați DFirst ("DateofSale", "ProductSales") ca Expr1 din ProductSales GROUP BY DFirst ("DateofSale", "ProductSales"); |
Returnează valoarea aleatoare din câmpul "DateofSale" a tabelului "ProductSales". Dacă tabelul are o "cheie primară", acesta va returna valoarea "prima" a "DateofSale" în funcție de ordinea ascendentă a cheii primare. |
Selectați DLast ("DateofSale", "ProductSales") ca FirstDis_ID din ProductSales GROUP BY DLast ("DateofSale", "ProductSales"); |
Returnează valoarea aleatoare din câmpul "DateofSale" a tabelului "ProductSales". Dacă tabelul are o "cheie primară", va returna valoarea "Ultima" a "DateofSale" pe baza ordinii ascendente a cheii primare. Returnează primul "ProductID" din tabelul "ProductSales", unde valoarea "reducere" este "0" și afișează rezultatul în coloana "FirstDis_ID". |
Selectați DLast ("ProductID", "ProductSales", "reducere = 0") ca LastDis_ID din ProductSales GROUP BY DLast ("ProductID", "ProductSales", "reducere = 0"); |
Returnează ultimul "ProductID" din tabelul "ProductSales", unde valoarea "reducere" este "0" și afișează rezultatul în coloana "LastDis_ID". |