Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

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

語法

DFirst ( expr , domain [, criteria] )

DLast ( expr , domain [, criteria] )

DFirstDLast 函數具有下列自變數:

引數

描述

expr

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

domain

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

criteria

可省略。 用來限制 執行 DFirstDLast 函數之數據範圍的字串表示式。 例如, criteria 通常等同於 SQL 運算式中的 WHERE 子句,而沒有 WHERE 一詞。 如果省略 criteria,DFirstDLast 函數會針對整個網域評估 expr 準則 中包含 的任何欄位也必須是網 中的欄位;否則, DFirstDLast 函數會傳 回 Null。

註解

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

範例

Expression

結果​​

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」 傳回第一個 「ProductID」,其中 「Discount」 值為 「0」,並在 「FirstDis_ID」欄中顯示結果。

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

傳回「ProductSales」數據表中「折扣」值為「0」的「產品標識碼」,並在「LastDis_ID」欄中顯示結果。

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。