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

DFirst および DLast 関数を使うと、テーブルやクエリの特定のフィールドの値を何でもいいから 1 つ必要なときに、そのフィールドからランダムにレコードを取得できます。 DFirst および DLast 関数は、フォームまたはレポートのマクロ、モジュール、クエリ式、演算コントロールで使います。

構文

DFirst ( expr , domain [, criteria] )

DLast ( expr , domain [, criteria] )

DFirst 関数および DLast 関数の引数は次のとおりです。

引数

説明

expr

必須。 最初または最後の値を取得するフィールドを示す式。 テーブルやクエリ内のフィールドを示す文字列式、または対象フィールド内のデータに対して計算を実行する式を指定できます。 expr では、テーブル内のフィールド、フォームのコントロール、定数、または関数の名前を指定できます。 expr で関数を指定する場合、その関数は組み込みでもユーザー定義でもかまいませんが、別のドメインの集計関数または SQL 集計関数は使えません。

domain

必須。 ドメインを構成するレコード セットを示す文字列式。

criteria

省略可能です。 DFirst または DLast 関数を実行するデータの範囲を制限するために使用される文字列式。 たとえば、 条件 は、多くの場合、WHERE という単語を含まない SQL 式の WHERE 句と同じです。 条件を省略すると、DFirst 関数と DLast 関数はドメイン全体に対して expr を評価します。 条件に含まれるフィールドは、ドメイン内のフィールドである必要もあります。それ以外の場合、DFirst 関数と DLast 関数は Null を返します。

解説

注:  レコード セット (ドメイン) 内の最初または最後のレコードを取得したい場合、昇順または降順に並べ替えるクエリを作成し、TopValues プロパティを 1 に設定する必要があります。 詳細については、TopValues プロパティのトピックをご覧ください。 Visual Basic for Applications (VBA) モジュールからは、ADO の Recordset オブジェクトを作成し、MoveFirst メソッドまたは MoveLast メソッドを使って、レコード セットの最初のレコードまたは最後のレコードを取得することもできます。

結果

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");

"割引" 値が "0" であるテーブル "ProductSales" から Last "ProductID" を返し、結果を列 "LastDis_ID" に表示します。

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。