Funções DPrimeiro, DÚltimo

Aplica-se A
Access para Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Pode utilizar as funções PRIMEIRO e PRIMIR para devolver um registo aleatório de um campo específico numa tabela ou consulta quando apenas precisa de qualquer valor desse campo. Utilize as funções DFirst e DLast numa macro, módulo, expressão de consulta ou controlo calculado num formulário ou relatório.

Sintaxe

DFirst( ** expr, domínio [, critérios**] )

DLast( ** expr, domínio [, critérios**] )

As funções DFirst e DLast têm estes argumentos:

Argumento Descrição
expr Obrigatório. Uma expressão que identifica o campo a partir do qual pretende localizar o primeiro ou o último valor. Pode ser uma expressão de cadeia que identifica um campo numa tabela ou consulta ou uma expressão que executa um cálculo em dados nesse campo. Em expr, pode incluir o nome de um campo numa tabela, um controlo num formulário, uma constante ou uma função. Se expr inclui uma função, pode ser incorporada ou definida pelo utilizador, mas não pode ser outra agregação de domínio ou função de agregação SQL.
domínio Obrigatório. Uma expressão de cadeia que identifica o conjunto de registos que constituem o domínio.
critérios Opcional. Uma expressão de cadeia utilizada para restringir o intervalo de dados no qual a função DPirst ou DLast é executada. Por exemplo, criteria é muitas vezes equivalente à cláusula WHERE numa expressão SQL, sem a palavra WHERE. Se o critério for omitido, as funções DFirst e DLast avaliam expr em relação ao domínio inteiro. Qualquer campo incluído nos critérios também deve ser um campo no domínio; caso contrário, as funções DFirst e DLast retornam um Null.

Comentários

Nota

Se quiser devolver o primeiro ou o último registo num conjunto de registos (um domínio), deve criar uma consulta ordenada por ascendente ou descendente e definir a propriedade TopValues como 1. Para obter mais informações, consulte o tópico da propriedade TopValues . A partir de um módulo Visual Basic for Applications (VBA), você também pode criar um objeto Recordset ADO e usar o método MoveFirst ou MoveLast para retornar o primeiro ou o último registro em um conjunto de registros.

Exemplos

Expressão Resultados
SELECT DFirst("DateofSale","ProductSales") AS Expr1 FROM ProductSales GROUP BY DFirst("DateofSale","ProductSales"); Devolve um valor aleatório do campo "DatadaVenda" da Tabela "VendasDoProduto". Se a tabela tiver uma "chave primária", irá devolver o valor "PRIMEIRO" da "DatadaVenda" com base na ordem ascendente da chave primária.
SELECT DLast("DatadaVenda","VendasProdutos") COMO FirstDis_ID FROM ProductSales GROUP BY DLast("DateofSale","ProductSales"); Devolve um valor aleatório do campo "DatadaVenda" da Tabela "VendasDoProduto". Se a tabela tiver uma "chave primária", devolverá o valor "LAST" da "DatadaVenda" com base na ordem ascendente da chave primária. Devolve o Primeiro "IDDoProduto" da Tabela "VendasProdutos" onde o valor de "Desconto" é "0" e apresenta o resultado na coluna "FirstDis_ID".
SELECT DLast("IDDoProduto","VendasDoProduto","Desconto=0") COMO LastDis_ID DO GRUPO VendasProdutos POR DDast("IDDoProduto","VendasDoProduto","Desconto=0"); Devolve o último "IDDoProduto" da Tabela "ProductSales" onde o valor de "Desconto" é "0" e apresenta o resultado na coluna "LastDis_ID".