Zaloguj się przy użyciu konta Microsoft
Zaloguj się lub utwórz konto.
Witaj,
Wybierz inne konto.
Masz wiele kont
Wybierz konto, za pomocą którego chcesz się zalogować.

Za pomocą funkcji DFirst i DLast można zwrócić losowy rekord z określonego pola w tabeli lub zapytaniu, gdy potrzebujesz po prostu 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, w którym ma zostać znaleźć pierwszą lub ostatnią wartość. Może to być wyrażenie tekstowe identyfikujące pole tabeli lub zapytania albo wyrażenie, które wykonuje obliczenia na danych w tym polu. Za prmoż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 ograniczenia zakresu danych, na którym jest wykonywana funkcja DFirst lub DLast. Na przykład kryteria często równoważne klauzuli WHERE w wyrażeniu SQL bez wyrazu WHERE. Jeśli kryteria są pominięte, funkcje DFirst i DLast są szacowane względem całej domeny. Każde pole uwzględnione w kryteriach musi być również polem w domenie; w przeciwnym razie funkcje DFirst i DLast zwracają wartość Null.

Spostrzeżenia

Uwaga:  Aby zwrócić pierwszy lub ostatni rekord w zestawie rekordów (a domena ), należy utworzyć zapytanie sortowane jako rosnąco lub malejąco i ustawić dla właściwości NajwyższeWartości wartość 1. Aby uzyskać więcej informacji, zobacz temat właściwości TopValues(NajwyższeWartości). W module języka Visual Basic for Applications (VBA) możesz również utworzyć obiekt ADO Recordset i użyć metody MoveFirst lub MoveLast, aby zwrócić pierwszy lub ostatni rekord w zestawie rekordów.

Przykłady

Wyrażenie

Wyniki

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

Zwraca losową wartość z pola "DateofSale" tabeli "ProductSales". Jeśli tabela ma "klucz podstawowy", zwróci ona wartość "FIRST" wartości "DateofSale" na podstawie rosnącej kolejności klucza podstawowego.

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

Zwraca losową wartość z pola "DateofSale" tabeli "ProductSales". Jeśli tabela ma "klucz podstawowy", zwraca wartość "LAST" wartości "DateofSale" na podstawie rosnącej kolejności klucza podstawowego. Zwraca wartość "ProductID" 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ść ostatniego "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ą.

Czy te informacje były pomocne?

Jaka jest jakość języka?
Co wpłynęło na Twoje wrażenia?

Dziękujemy za opinię!

×