當您只需要來自該欄位的任何值時,您可以使用 DFirstDLast 函數,從資料表或查詢中的特定欄位,來返回隨機記錄。 在表單或報表的 巨集、模組、查詢運算式或 計算控制項 使用 DFirstDLast 函數。

語法

DFirst ( expr, domain [, criteria ])

DLast ( expr, domain [, criteria ])

DFirst 和 DLast 函數具有這些引數:

引數

描述

expr

必要。 用來識別要尋找第一個或最後一個值之欄位的運算式。 它可以是識別資料 字串運算式 或查詢中的欄位,或是對該欄位的資料執行計算的運算式。 在 expr中,您可以包含資料表中的欄位名稱、表單上的控制項、常數或函數。 expr 可包含內建或使用者定義的函數,但不得是另一個網域彙總或 SQL 彙總函數。

domain

必要。 識別構成範圍之記錄集的字串運算式。

criteria

可省略。 用來限制執行 DFirstDLast 函數之資料範圍的字串運算式。 例如, 準則 通常相當於 SQL 運算式中的 WHERE 子句,不含 WHERE 一詞。 如果省略準則,DFirstDLast函數會針對整個網域評估expr。 準則中包含的任何 欄位 也必須是網域中的 欄位;否則 ,DFirst 和DLast 函數 會返回 Null。

註解

附註:  如果您想要將一組記錄的第一個或最後一個記錄 ( 範圍) ,您應該建立一個以遞增或遞減方式排序的查詢,並且將 TopValues 屬性設為 1。 詳細資訊請參閱 TopValues 屬性主題。 在 Visual Basic for Applications (VBA) 模組中,您也可以建立 ADO Recordset 物件,並使用 MoveFirstMoveLast 方法,來退回一組記錄的第一或最後一個記錄。

範例

運算式

結果

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

從資料表 "ProductSales" 的欄位 "DateofSale" 中,返回隨機值。 如果資料表有「主鍵」,它會根據主鍵的遞增順序,將 "DateofSale" 的 "FIRST" 值。

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

從資料表 "ProductSales" 的欄位 "DateofSale" 中,返回隨機值。 如果資料表有「主鍵」,它會根據主鍵的遞增順序,將"DateofSale"的 "LAST" 值。 會從資料表 "ProductSales" 中,將 "Discount" 值顯示為 "0" 的第一個 "ProductID" ,並顯示結果在 "FirstDis_ID" 欄中。

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

從資料表 "ProductSales" 中,將 "Discount" 值顯示為 "0" 並顯示在資料行 "LastDis_ID" 中,會從 "ProductSales" 中返回最後一個 "ProductID"。

Need more help?

Expand your skills
Explore Training
Get new features first
Join Microsoft Office Insiders

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?

Thank you for your feedback!

×