Fungsi DFirst, DLast

Berlaku Untuk
Access untuk Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Anda dapat menggunakan fungsi DFirst dan DLast untuk mengembalikan catatan acak dari bidang tertentu dalam tabel atau kueri ketika Anda hanya memerlukan nilai apa pun dari bidang tersebut. Gunakan fungsi DFirst dan DLast dalam makro, modul, ekspresi kueri, atau kontrol terhitung pada formulir atau laporan.

Sintaks

DFirst( ** expr, domain [, kriteria**] )

DLast( ** expr, domain [, kriteria**] )

Fungsi DFirst dan DLast memiliki argumen berikut:

Argumen Deskripsi
ekspr Diperlukan. Ekspresi yang mengidentifikasi bidang tempat Anda ingin menemukan nilai pertama atau terakhir. Ini dapat berupa ekspresi string yang mengidentifikasi bidang dalam tabel atau kueri, atau ekspresi yang melakukan penghitungan pada data dalam bidang tersebut. Dalam expr, Anda dapat menyertakan nama bidang dalam tabel, kontrol pada formulir, konstanta, atau fungsi. Jika expr menyertakan fungsi, fungsi tersebut dapat berupa fungsi bawaan atau ditentukan pengguna, tetapi bukan agregat domain lain atau fungsi agregat SQL.
domain Diperlukan. Ekspresi string yang mengidentifikasi sekumpulan rekaman yang membentuk domain.
criteria Opsional. Ekspresi string yang digunakan untuk membatasi rentang data tempat fungsi DFirst atau DLast dilakukan. Misalnya, kriteria sering kali setara dengan klausa WHERE dalam ekspresi SQL, tanpa kata WHERE. Jika kriteria dihilangkan, fungsi DFirst dan DLast mengevaluasi expr terhadap seluruh domain. Setiap bidang yang termasuk dalam kriteria juga harus berupa bidang dalam domain; jika tidak, fungsi DFirst dan DLast mengembalikan Null.

Keterangan

Catatan

Jika ingin mengembalikan catatan pertama atau terakhir dalam kumpulan rekaman (domain), Anda harus membuat kueri yang diurutkan sebagai naik atau menurun dan mengatur properti TopValues ke 1. Untuk informasi selengkapnya, lihat topik properti TopValues . Dari modul Visual Basic for Applications (VBA), Anda juga dapat membuat objek Recordset ADO dan menggunakan metode MoveFirst atau MoveLast untuk mengembalikan rekaman pertama atau terakhir dalam sekumpulan rekaman.

Contoh

Ekspresi Hasil
PILIH DFirst("DateofSale","ProductSales") SEBAGAI Expr1 DARI ProductSales GROUP BY DFirst("DateofSale","ProductSales"); Mengembalikan nilai acak dari bidang "DateofSale" dari tabel "ProductSales". Jika tabel memiliki "kunci primer", tabel akan mengembalikan nilai "PERTAMA" dari "DateofSale" berdasarkan urutan naik kunci primer.
PILIH DLast("DateofSale","ProductSales") SEBAGAI FirstDis_ID DARI ProductSales GROUP BY DLast("DateofSale","ProductSales"); Mengembalikan nilai acak dari bidang "DateofSale" dari tabel "ProductSales". Jika tabel memiliki "kunci primer", tabel akan mengembalikan nilai "LAST" dari "DateofSale" berdasarkan urutan naik kunci primer. mengembalikan "ProductID" Pertama dari tabel "ProductSales" di mana nilai "Diskon" adalah "0" dan menampilkan hasilnya dalam kolom "FirstDis_ID".
PILIH DLast("ProductID","ProductSales","Diskon=0") SEBAGAI LastDis_ID DARI ProductSales GROUP BY DLast("ProductID","ProductSales","Diskon=0"); Mengembalikan "ProductID" terakhir dari tabel "ProductSales" di mana nilai "Diskon" adalah "0" dan menampilkan hasilnya dalam kolom "LastDis_ID".