Applies ToAccess для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Функции DFirst и DLast можно использовать для возврата случайной записи из определенного поля в таблице или запросе, если вам просто требуется любое значение из этого поля. Используйте функции DFirst и DLast в макрос, модуле, выражении запроса или вычисляемый элемент управления в форме или отчете.

Синтаксис

DFirst ( выражение , подмножество [, условия] )

DLast ( выражение , подмножество [, условия] )

Функции DFirst и DLast принимают следующие аргументы:

Аргумент

Описание

выражение

Обязательный аргумент. Выражение, определяющее поле, для которого нужно найти первое или последнее значение. Это может быть строковое выражение поля в таблице или запросе либо выражение, которое выполняет вычисление данных в этом поле. В выражение можно включить имя поля в таблице, элемента управления в форме, константы или функции. Выражение может включать в себя встроенную или пользовательскую функцию, но не другую агрегатную функцию по подмножеству или агрегатную функцию SQL.

подмножество

Обязательный аргумент. Строковое выражение, определяющее набор записей, которые образуют подмножество.

условия

Необязательный. Строковое выражение, используемое для ограничения диапазона данных, на котором выполняется функция DFirst или DLast . Например, критерии часто эквивалентны предложению WHERE в выражении SQL без слова WHERE. Если критерии опущены, функции DFirst и DLast оценивают expr для всего домена. Любое поле, включенное в условия, также должно быть полем в домене; В противном случае функции DFirst и DLast возвращают значение NULL.

Замечания

Примечание:  Если вы хотите вернуть первую или последнюю запись в наборе записей ( подмножество ), следует создать запрос, отсортированный по возрастанию или по убыванию, и присвоить свойству TopValues значение 1. Дополнительные сведения см. в разделе Свойства TopValues . В модуле Visual Basic для приложений (VBA) можно также создать объект ADO Recordset и использовать метод MoveFirst или MoveLast, чтобы вернуть первую или последнюю запись в наборе записей.

Примеры

Expression

Результаты

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

Возвращает случайное значение из поля DateofSale таблицы ProductSales. Если таблица содержит "первичный ключ", она вернет значение "FIRST" "DateofSale" на основе возрастающего порядка первичного ключа.

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

Возвращает случайное значение из поля DateofSale таблицы ProductSales. Если таблица содержит "первичный ключ", она вернет значение LAST "DateofSale" в зависимости от возрастающего порядка первичного ключа. Возвращает первый "ProductID" из таблицы "ProductSales", где значение "Скидка" равно "0", и отображает результат в столбце "FirstDis_ID".

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

Возвращает значение Last "ProductID" из таблицы "ProductSales", где значение "Скидка" равно "0", и отображает результат в столбце "LastDis_ID".

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.