Funkce DFirst a DLast

Platí pro
Access pro Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

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".