Za pomocą funkcji DFirst i DLast możesz zwrócić losowy rekord z określonego pola w tabeli lub zapytaniu, gdy po prostu potrzebujesz dowolnej wartości z tego pola. Funkcje DFirst i DLast można używać w makro, module, wyrażeniu zapytania lub kontrolka obliczeniowa w formularzu lub raporcie.

Składnia

DFirst ( wyr ., domena [, kryteria] )

DLast ( wyr ., domena [, kryteria] )

Funkcje DFirst i DLast mają następujące argumenty:

Argument

Opis

wyrażenie

Argument wymagany. Wyrażenie identyfikujące pole, z którego chcesz znaleźć pierwszą lub ostatnią wartość. Może to być wyrażenie tekstowe identyfikująca pole w tabeli lub zapytaniu albo wyrażenie wykonujące obliczenia na danych w tym polu. W polu expr można dołączyć nazwę pola w tabeli, kontrolkę w formularzu, stałą lub funkcję. Jeśli wyrażenie zawiera funkcję, może to być funkcja wbudowana lub zdefiniowana przez użytkownika, ale z wyłączeniem funkcji agregującej domeny i funkcji agregującej języka SQL.

domena

Argument wymagany. Wyrażenie tekstowe identyfikujące zestaw rekordów stanowiący domenę.

kryteria

Argument opcjonalny. Wyrażenie ciągu służące do ograniczania zakresu danych, dla którego wykonywana jest funkcja DFirst lub DLast . Na przykład kryteria są często równoważne klauzuli WHERE w wyrażeniu SQL bez wyrazu WHERE. Jeśli argument kryteria zostanie pominięty, funkcje DFirst i DLastbędą oceniać wyrażenie względem całej domeny. Każde pole zawarte w kryteriach musi być również polem w domenie. W przeciwnym razie funkcje DFirst i DLast zwracają wartość Null.

Uwagi

Uwaga:  Jeśli chcesz zwrócić pierwszy lub ostatni rekord w zestawie rekordów ( domena ), utwórz zapytanie posortowane jako rosnąco lub malejąco i ustaw właściwość TopValues (NajwyższeWartości ) na 1. Aby uzyskać więcej informacji, zobacz temat właściwości TopValues . Na podstawie modułu Visual Basic for Applications (VBA) można również utworzyć obiekt Recordset modelu ADO i użyć metody MoveFirst lub MoveLast w celu zwrócenia pierwszego lub ostatniego rekordu w zbiorze rekordów.

Przykłady

Expression

Wyniki

SELECT DFirst("DateofSale","ProductSales") AS Expr1 FROM ProductSales GROUP BY DFirst("DateofSale","ProductSales");

Zwraca wartość losową z pola "DateofSale" tabeli "SprzedażProduktu". Jeśli tabela ma "klucz podstawowy", zwraca wartość "FIRST" "DateofSale" na podstawie kolejności rosnącej klucza podstawowego.

SELECT DLast("DateofSale","ProductSales") AS FirstDis_ID FROM ProductSales GROUP BY DLast("DateofSale","ProductSales");

Zwraca wartość losową z pola "DateofSale" tabeli "SprzedażProduktu". Jeśli tabela ma "klucz podstawowy", zwraca wartość "LAST" "DateofSale" na podstawie kolejności rosnącej klucza podstawowego. zwraca pierwszy identyfikator produktu z tabeli "ProductSales", gdzie wartość "Rabat" wynosi "0" i wyświetla wynik w kolumnie "FirstDis_ID".

SELECT DLast("ProductID","ProductSales","Discount=0") AS LastDis_ID FROM ProductSales GROUP BY DLast("ProductID","ProductSales","Discount=0");

Zwraca wartość Last "ProductID" z tabeli "ProductSales", gdzie wartość "Rabat" wynosi "0" i wyświetla wynik w kolumnie "LastDis_ID".

Potrzebujesz dalszej pomocy?

Chcesz uzyskać więcej opcji?

Poznaj korzyści z subskrypcji, przeglądaj kursy szkoleniowe, dowiedz się, jak zabezpieczyć urządzenie i nie tylko.

Społeczności pomagają zadawać i odpowiadać na pytania, przekazywać opinie i słuchać ekspertów z bogatą wiedzą.