Funkce DFirst a DLast

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

Pomocí funkcí DFirst a DLast můžete vrátit náhodný záznam z určitého pole v tabulce nebo dotazu, pokud jednoduše potřebujete libovolnou hodnotu z tohoto 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í následující argumenty:

Argument Popis
výraz Povinný argument. Výraz určující pole, ve kterém chcete najít první nebo poslední hodnotu. Může se jednat buď o řetězcový výraz identifikující pole v tabulce nebo dotazu, nebo o výraz, který provádí výpočet s daty v tomto poli. Výraz může obsahovat název pole tabulky, ovládacího prvku ve formuláři, konstanty nebo funkce. Pokud výraz obsahuje funkci, může jít o předdefinovanou funkci nebo funkci definovanou uživatelem, ale nikoli o jinou doménovou agregační funkci nebo agregační funkci 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, který slouží k omezení oblasti dat, u které bude provedena funkce DFirst nebo DLast . Kritérium je například často ekvivalentem klauzule WHERE ve výrazu SQL bez slova WHERE. Pokud kritérium vynecháte, funkce DFirst a DLast vyhodnotí výraz pro celou doménu. Každé pole, které je zahrnuto v kritériu , musí být také polem v doméně; v opačném případě vrátí funkce DFirst a DLast 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 hodnotu 1. Další informace najdete v tématu o vlastnosti TopValues . Z modulu jazyk Visual Basic for Application (VBA) můžete také vytvořit objekt sady záznamů rozhraní ADO a pomocí metody MoveFirst nebo MoveLast vrátit první nebo poslední záznam 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 data prodeje na základě vzestupného pořadí primárního klíče. Vrátí první IDProduktu z tabulky ProdejVýrobku, kde hodnota Sleva je 0, a výsledek zobrazí ve sloupci FirstDis_ID.
SELECT DLast("IDProduktu";"ProdejProduktu";"Sleva=0") AS LastDis_ID FROM ProductSales GROUP BY DLast("IDProduktu";"ProductSales";"Discount=0"); Vrátí poslední IDProduktu z tabulky ProdejVýrobku, kde hodnota Sleva je 0, a výsledek zobrazí ve sloupci LastDis_ID.