Funkcie DFirst a DLast môžete použiť na vrátenie náhodného záznamu z určitého poľa v tabuľke alebo dotaze, keď jednoducho potrebujete ľubovoľnú hodnotu z daného poľa. Použite funkcie DFirst a DLast v makre, module, výraze dotazu alebo vypočítavanom ovládacom prvku vo formulári alebo zostave.
Syntax
DFirst( ** výraz, doména [, kritériá**] )
DLast( ** výraz, doména [, kritériá**] )
Funkcie DFirst a DLast majú tieto argumenty:
| Argument | Popis |
|---|---|
| výraz | Povinný argument. Výraz určujúci pole, v ktorom chcete nájsť prvú alebo poslednú hodnotu. Môže to byť reťazcový výraz identifikujúci pole v tabuľke alebo dotaze, alebo výraz, ktorý vykoná výpočet s údajmi v danom poli. Do výrazu môžete zahrnúť názov poľa v tabuľke, ovládací prvok vo formulári, konštantu alebo funkciu. Ak výraz obsahuje funkciu, môže byť vstavaná alebo používateľom definovaná, ale nie agregačná funkcia inej domény alebo agregačná funkcia SQL. |
| doména | Povinný argument. Výraz reťazca určujúci množinu záznamov, ktoré vytvárajú doménu. |
| kritériá | Voliteľný argument. Reťazcový výraz slúžiaci na obmedzenie rozsahu údajov, ktoré spracuje funkcia DFirst alebo DLast. Kritériá sú napríklad často ekvivalentné klauzule WHERE vo výraze SQL bez slova WHERE. Ak sa vynechá kritérium , funkcie DFirst a DLast vyhodnocujú výraz voči celej doméne. Každé pole, ktoré je zahrnuté v kritériách , musí byť aj poľom v doméne. V opačnom prípade funkcie DFirst a DLast vrátia hodnotu Null. |
Poznámky:
Poznámka
Ak chcete vrátiť prvý alebo posledný záznam v množine záznamov (doméne), mali by ste vytvoriť dotaz zoradený vzostupne alebo zostupne a nastaviť vlastnosť TopValues na hodnotu 1. Ďalšie informácie nájdete v téme vlastnosti TopValues. V module jazyka Visual Basic for Applications (VBA) môžete tiež vytvoriť objekt ADO Recordset a použiť metódu MoveFirst alebo MoveLast na vrátenie prvého alebo posledného záznamu v množine záznamov.
Príklady
| Výraz | Výsledky |
|---|---|
| SELECT DFirst("DateofSale";"PredajProduktov") AS Expr1 FROM ProductSales GROUP BY DFirst("DateofSale";"PredajProduktov"); | Vráti náhodnú hodnotu z poľa DateofSale tabuľky PredajProduktov. Ak tabuľka obsahuje "primárny kľúč", vráti hodnotu FIRST parametra DateofSale na základe vzostupného poradia hlavného kľúča. |
| SELECT DLast("DateofSale";"PredajProduktov") AS FirstDis_ID FROM ProductSales GROUP BY DLast("DateofSale";"PredajProduktov"); | Vráti náhodnú hodnotu z poľa DateofSale tabuľky PredajProduktov. Ak tabuľka obsahuje "primárny kľúč", vráti hodnotu LAST hodnoty DateofSale na základe vzostupného poradia primárneho kľúča. Vráti hodnotu First "ProductID" z tabuľky PredajProduktov, kde hodnota "Zľava" je "0" a zobrazí výsledok v stĺpci "FirstDis_ID". |
| SELECT DLast("ProductID","ProductSales";"Discount=0") AS LastDis_ID FROM ProductSales GROUP BY DLast("ProductID";"PredajProduktov";"Zľava=0"); | Vráti hodnotu Last "ProductID" z tabuľky PredajProduktov, kde hodnota "Zľava" je "0" a zobrazí výsledok v stĺpci "LastDis_ID". |