Puede usar las funciones DFirst y DLast para devolver un registro aleatorio de un campo concreto en una tabla o consulta cuando simplemente necesite cualquier valor de ese campo. Use las funciones DFirst y DLast en un macro, módulo, expresión de consulta o control calculado en un formulario o informe.
Sintaxis
DFirst ( expr , dominio [, criterios] )
DLast ( expresión , dominio [, criterios] )
Las funciones DFirst y DLast tienen estos argumentos:
Argumento |
Descripción |
expresión |
Obligatorio. Expresión que identifica el campo desde el que desea buscar el primer o el último valor. Puede ser un expresión de cadena identificar un campo en una tabla o consulta, o una expresión que realiza un cálculo de los datos de ese campo. En expr, puede incluir el nombre de un campo en una tabla, un control de un formulario, una constante o una función. Si expresión incluye una función, puede ser integrada o definida por el usuario, pero no otra función de agregado de dominio o de agregado de SQL. |
dominio |
Requerido. Expresión de cadena que identifica el conjunto de registros que constituye el dominio. |
criterio |
Opcional. Expresión de cadena usada para restringir el rango de datos en el que se realizan las funciones DFirst o DLast . Por ejemplo, los criterios suelen ser equivalentes a la cláusula WHERE en una expresión SQL, sin la palabra WHERE. Si se omiten los criterios , las funciones DFirst y DLast evalúanla expresión en todo el dominio. Cualquier campo que se incluya en los criterios también debe ser un campo en el dominio; De lo contrario, las funciones DFirst y DLast devuelven un valor Null. |
Comentarios
Nota: Si desea devolver el primer o el último registro de un conjunto de registros (una dominio ), debe crear una consulta ordenada como ascendente o descendente y establecer la propiedad TopValues en 1. Para obtener más información, vea el tema de la propiedad TopValues . Desde un módulo de Visual Basic para Aplicaciones (VBA), también puede crear un objeto Recordset de ADO y usar el método MoveFirst o MoveLast para devolver el primer o último registro de un conjunto de registros.
Ejemplos
Expression |
Resultados |
SELECT DFirst("DateofSale","ProductSales") AS Expr1 FROM ProductSales GROUP BY DFirst("DateofSale","ProductSales"); |
Devuelve el valor aleatorio del campo "DateofSale" de la tabla "ProductSales". Si la tabla tiene una "clave principal", devolverá el valor "FIRST" de "DateofSale" en función del orden ascendente de la clave principal. |
SELECT DLast("DateofSale","ProductSales") AS FirstDis_ID FROM ProductSales GROUP BY DLast("DateofSale","ProductSales"); |
Devuelve el valor aleatorio del campo "DateofSale" de la tabla "ProductSales". Si la tabla tiene una "clave principal", devolverá el valor "LAST" de "DateofSale" en función del orden ascendente de la clave principal. devuelve el Primer "IdProducto" de la tabla "VentasProducto" donde el valor "Descuento" es "0" y muestra el resultado en la columna "FirstDis_ID". |
SELECT DLast("ProductID","ProductSales","Discount=0") AS LastDis_ID FROM ProductSales GROUP BY DLast("ProductID","ProductSales","Discount=0"); |
Devuelve el último "IdProducto" de la tabla "VentasProducto" donde el valor "Descuento" es "0" y muestra el resultado en la columna "LastDis_ID". |