Funkce DFirst a DLast můžete použít k vrácení náhodného záznamu z konkrétního pole v tabulce nebo dotazu, když jednoduše potřebujete libovolnou hodnotu z daného pole. Funkce DFirst a DLast můžete použít v makru, modulu, výrazu dotazu nebo počítaném ovládacím prvku ve formuláři nebo sestavě.
Syntaxe
DFirst( ** výraz, doména [, kritéria**] )
DLast( ** výraz, doména [, kritéria**] )
Funkce DFirst a DLast mají tyto argumenty:
| Argument | Popis |
|---|---|
| výraz | Povinný argument. Výraz, který identifikuje pole, ze kterého chcete najít první nebo poslední hodnotu. Může to být buď řetězcový výraz identifikující pole v tabulce nebo dotazu, nebo výraz, který provádí výpočet dat v daném poli. V výrazu můžete zahrnout název pole v tabulce, ovládací prvek ve formuláři, konstantu nebo funkci. Pokud výraz obsahuje funkci, může být buď integrovaná, nebo uživatelem definovaná, ale ne jiná doménová agregace nebo agregační funkce SQL. |
| doména | Povinný argument. Řetězcový výraz identifikuje sadu záznamů tvořících doménu. |
| kritéria | Nepovinný argument. Řetězcový výraz používaný k omezení rozsahu dat, na kterém se provádí funkce DFirst nebo DLast . Například kritéria jsou často ekvivalentní klauzuli WHERE ve výrazu SQL bez slova WHERE. Pokud jsou kritéria vynechána, funkce DFirst a DLast vyhodnocují výraz pro celou doménu. Každé pole, které je součástí kritérií , musí být také polem v doméně; V opačném případě funkce DFirst a DLast vrátí hodnotu Null. |
Poznámky
Poznámka
Pokud chcete vrátit první nebo poslední záznam v sadě záznamů (doméně), měli byste vytvořit dotaz seřazený vzestupně nebo sestupně a nastavit vlastnost TopValues na 1. Další informace najdete v tématu vlastnosti TopValues . Z modulu jazyka jazyk Visual Basic for Application (VBA) můžete také vytvořit objekt ADO Recordset a použít metodu MoveFirst nebo MoveLast k vrácení prvního nebo posledního záznamu v sadě záznamů.
Příklady
| Výraz | Výsledky: |
|---|---|
| SELECT DFirst("DateofSale";"ProductSales") AS Expr1 FROM ProductSales GROUP BY DFirst("DateofSale";"ProductSales"); | Vrátí náhodnou hodnotu z pole DateofSale tabulky ProductSales. Pokud tabulka obsahuje "primární klíč", vrátí hodnotu "FIRST" hodnoty "DateofSale" na základě vzestupného pořadí primárního klíče. |
| SELECT DLast("DateofSale";"ProductSales") AS FirstDis_ID FROM ProductSales GROUP BY DLast("DateofSale";"ProductSales"); | Vrátí náhodnou hodnotu z pole DateofSale tabulky ProductSales. Pokud tabulka obsahuje "primární klíč", vrátí hodnotu "LAST" hodnoty "DateofSale" na základě vzestupného pořadí primárního klíče. vrátí hodnotu First ProductID z tabulky ProductSales, kde hodnota Discount je 0, a zobrazí výsledek ve sloupci "FirstDis_ID". |
| SELECT DLast("ProductID";"ProductSales";"Discount=0") AS LastDis_ID FROM ProductSales GROUP BY DLast("ProductID";"ProductSales";"Discount=0"); | Vrátí hodnotu Last "ProductID" z tabulky "ProductSales", kde hodnota "Discount" je "0", a zobrazí výsledek ve sloupci "LastDis_ID". |