Exemplos de critérios de consulta

Quando você quiser limitar os resultados de uma consulta com base nos valores de um campo, use critérios de consulta. Um critério de consulta é uma expressão que o Access compara a valores de campo de consulta para determinar se inclui o registro que contém cada valor. Por exemplo, = "Curitiba" é uma expressão que o Access pode comparar a valores em um campo de texto de uma consulta. Se o valor desse campo em um determinado registro for "Curitiba", o Access incluirá o registro nos resultados da consulta.

Este tópico lista vários exemplos de critérios de consultas, partindo do princípio de que você esteja familiarizado com o planejamento de consultas de seleção simples.

Para saber mais sobre consultas, leia o artigo Introdução às consultas.

Neste tópico


Visão geral

Um critério é semelhante a uma fórmula — é uma cadeia de caracteres que pode consistir em referências de campo, operadores (operador: um sinal ou símbolo que especifica o tipo de cálculo a ser executado dentro de uma expressão. Existem operadores matemáticos, de comparação, lógicos e de referência.) e constantes (constante: um valor que não é calculado, e que portanto não é alterado. Por exemplo, o número 210 e o texto "Ganhos do trimestre" são constantes. Uma expressão ou um valor resultante de uma expressão não é uma constante.). Os critérios de consulta também são conhecidos como expressões.

O vídeo a seguir mostra como usar critérios para um campo de texto.

A tabela a seguir mostra alguns exemplos de critérios e explica como eles funcionam.

Critério Descrição
>25 e <50 Esse critério é aplicado a um campo Número, como Preço ou UnidadesEmEstoque. Inclui apenas os registros, nos quais o campo Preço ou UnidadesEmEstoque contêm um valor maior do que 25 e menor do que 50.
DifData ("aaaa", [DataDeNascimento], Data()) > 30 Esse critério é aplicado a um campo Data/Hora, como DataDeNascimento. Apenas registros nos quais o número de anos entre a data de nascimento de uma pessoa e a data atual for maior do que 30 são incluídos no resultado da consulta.
É Nulo Esse critério pode ser aplicado a qualquer tipo de campo para mostrar registros nos quais o valor do campo seja nulo.

Os critérios podem parecer muito diferentes entre si. Alguns são simples e utilizam operadores básicos (como "<") e constantes (como "50"). Outros são complexos e utilizam funções (como "DifData") ou referências de campo (como "[DataDeNascimento]"). Este tópico apresenta diversos exemplos de critérios comumente usados, agrupados pelo tipo de dados ao qual se aplicam. Você pode usar esses exemplos como ponto de partida para escrever seus próprios critérios.

Para adicionar critérios a uma consulta, é necessário abrir a consulta no modo Design. Em seguida, identifique os campos para os quais deseja especificar critérios. Se um campo ainda não estiver na grade de design, você poderá adicioná-lo arrastando-o da janela de design da consulta para a grade do campo ou clicando duas vezes no campo. Quando o campo desejado estiver na grade de design, insira o critério na linha Critérios correspondente a esse campo.

Usar o Construtor de Expressões para inserir critérios

Você pode usar o Construtor de Expressões quando quiser utilizar critérios que contenham funções. O Construtor de Expressões inclui recursos que contribuem para o uso correto de cada função. Para obter mais informações sobre o Construtor de Expressões, consulte o artigo Usar o Construtor de Expressões.

Todos os critérios especificados na linha Critérios serão combinados

Os critérios especificados para campos diferentes na linha Critérios são combinados usando o operador E. Por exemplo, você poderia especificar o critério ="Curitiba" para o campo Cidade e o critério < SomData("aaaa", -40, Data()) para o campo DataDeNascimento. Os dois critérios são interpretados juntos, desta forma:

Cidade = "Curitiba" E DataDeNascimento < SomData("aaaa", -40, Data())


Critérios para Cidade e DataDeNascimento

Texto explicativo 1 Os campos Cidade e DataDeNascimento incluem critérios.
Texto explicativo 2 Apenas os registros em que o valor do campo Cidade for Curitiba irá satisfazer este critério.
Texto explicativo 3 Apenas os registros para quem tem pelo menos 40 anos de idade irá satisfazer este critério.
Texto explicativo 4 Apenas os registros que atendam aos dois critérios serão incluídos no resultado.

Especifique critérios alternativos usando a linha Ou

Caso tenha critérios alternativos, ou dois conjuntos independentes de critérios, em que é suficiente satisfazer um dos conjuntos, use as linhas Critérios e ou na grade de design.

Critérios alternativos

Texto explicativo 1 O critério Cidade está especificado na linha Critérios.
Texto explicativo 2 O critério DataDeNascimento está especificado na linha ou.

Os critérios especificados nas linhas Critérios e ou são combinados usando o operador OU, conforme mostrado abaixo:

Cidade = "Curitiba" OU DataDeNascimento < SomData("aaaa", -40, Data())

Se for necessário especificar mais alternativas, use as linhas abaixo da linha ou.

Antes de continuar examinando os exemplos, observe o seguinte:

  • Se os critérios forem temporários ou forem alterados com frequência, você poderá filtrar o resultado da consulta, em vez de modificar frequentemente os critérios da consulta. Um filtro altera um resultado e consulta sem alterar o design da consulta. Para obter mais informações sobre filtros, leia a seção Consulte também.
  • Se os campos de critérios não forem alterados, mas se os valores desejados forem alterados com frequência, crie uma consulta parâmetro. Uma consulta parâmetro solicita entrada quando você a executa e a utiliza para criar os critérios de consulta. Para obter mais informações sobre como fazer com que uma consulta solicite entradas, leia a seção Consulte também.

Início da página Início da página

Critérios para campos Texto, Memorando e Hiperlink

Os exemplos a seguir são para o campo PaísRegião, que é baseado em uma tabela que armazena informações dos contatos. O critério é especificado na linha Critérios do campo na grade de design.

Critérios PaísRegião

Para incluir registros que... Use este critério Resultado da consulta
Correspondem totalmente a um valor, como China "China" Retorna registros nos quais o campo PaísRegião está definido como China.
Não correspondem a um valor, como México Não "México" Retorna registros nos quais o campo PaísRegião está definido como um país/uma região diferente de México.
Iniciam com a cadeia especificada, como R Como R*

Retorna registros para todos os nomes de países/regiões que iniciam com "R", como Reino Unido, Rússia etc.

 Observação   Quando utilizado em uma expressão, o asterisco (*) representa qualquer cadeia de caracteres — ele também é chamado de caractere curinga. Para obter uma lista desses caracteres, consulte o artigo Referência do caractere curinga do Access.

Não iniciam com a cadeia especificada, como R Não é Semelhante a R* Retorna registros para todos os nomes de países/regiões com um caractere diferente de "R".
Contêm a cadeia especificada, como Coreia Como "*Coreia*" Retorna registros para todos os nomes de países/regiões que contêm a cadeia "Coreia".
Não contêm a cadeia especificada, como Coreia Não é Semelhante a "*Coreia*" Retorna registros para todos os países/regiões que não contêm a cadeia "Coreia".
Terminam com a cadeia especificada, como "ina" Como "*ina" Retorna registros para todos os nomes de países/regiões que terminam em "ina", como China e Argentina.
Não terminam com a cadeia especificada, como "ina" Não é Semelhante a "*ina" Retorna registros para todos os nomes de países/regiões que não terminam em "ina", como China e Argentina.
Contêm valores nulos (ou ausentes) É Nulo Retorna registros nos quais não há valores no campo.
Não contêm valores nulos É Negado Nulo Retorna registros nos quais o valor não está ausente no campo.
Contêm cadeias de comprimento zero "" (um par de aspas) Retorna registros nos quais o campo é definido como um valor em branco (mas não nulo). Por exemplo, registros de vendas realizadas para outro departamento podem conter um valor em branco no campo PaísRegião.
Não contêm cadeias de comprimento zero Não "" Retorna registros nos quais o campo PaísRegião possui um valor não vazio.
Contém valores nulos ou cadeias de comprimento zero "" Ou É Nulo Retorna registros onde não há valor no campo ou o campo está definido como um valor em branco.
Não está vazio ou em branco É Negado Nulo E Não "" Retorna registros nos quais o campo PaísRegião tem um valor não vazio, não nulo.
Seguem um valor, como México, quando são classificados em ordem alfabética >= "México" Retorna registros de todos os países/as regiões, iniciando com México e continuando até o fim do alfabeto.
Estão dentro de um intervalo específico, como de A a D Como "[A-D]*" Retorna registros para nomes de países/regiões que iniciam com as letras de "A" a "D".
Correspondam a um de dois valores, como EUA ou Reino Unido "EUA" Ou "Reino Unido" Retorna registros para EUA e Reino Unido.
Contêm um dos valores em uma lista de valores Em("França", "China", "Alemanha", "Japão") Retorna registros para todos os países/regiões especificados na lista.
Contêm determinados caracteres em uma posição específica no valor do campo Direita([PaísRegião], 1) = "a" Retorna registros para todos os nomes de países/regiões nos quais a última letra seja "a".
Satisfaçam requisitos de comprimento Compr([PaísRegião]) > 10 Retorna registros para nomes de países/regiões que têm mais de 10 caracteres de comprimento.
Correspondam a um padrão específico Como "Chi??"

Retorna registros para nomes de países/regiões, como China e Chile, que têm cinco caracteres de comprimento e os primeiros três caracteres são "Chi".

 Observação   Os caracteres ? e _, quando usados em uma expressão, representam um caractere único — são também chamados de caracteres curinga. O caractere _ não pode ser usado na mesma expressão que o caractere ?, nem pode ser usado em uma expressão com o caractere curinga *. Você pode usar o caractere curinga _ em uma expressão que também contenha o caractere curinga %.

Os critérios de hiperlink são um pouco complicados

Por padrão, um critério que você especificar para um campo Hiperlink será aplicado à parte do texto de exibição do valor de campo, e não ao destino do link. Para especificar critérios para a parte da URL (Uniform Resource Locator) de destino do valor, use a expressão PartedoHiperlink. A sintaxe usada é semelhante a esta:

PartedoHiperlink([Tabela1].[Campo1],1) = "http://www.microsoft.com/"

Tabela1 é o nome da tabela que contém o campo de hiperlink, Campo1 é o campo de hiperlink e http://www.microsoft.com é a URL que você quer encontrar.

Início da página Início da página

Critérios para campos Número, Moeda e Numeração Automática

Os exemplos a seguir são para o campo PreçoUnitário, em uma consulta baseada em uma tabela que armazena informações sobre produtos. O critério é especificado na linha Critérios do campo, na grade de design da consulta.

Critérios PreçoUnitário

Para incluir registros que... Use este critério Resultado da consulta
Corresponda totalmente a um valor, como 100 100 Retorna registros nos quais o preço unitário do produto é R$ 100,00.
Não correspondam a um valor, como 1000 Não 1000 Retorna registros nos quais o preço unitário do produto não é R$ 1.000,00.
Contêm um valor menor do que outro valor, como 100 < 100
<= 100
Retorna registros nos quais o preço unitário é menor do que R$ 100,00 (<100). A segunda expressão (<=100) exibe registros nos quais o preço unitário é menor do que ou igual a R$ 100,00.
Contêm um valor maior do que outro valor, como 99,99 >99,99
>=99,99
Retorna registros nos quais o preço unitário é maior do que R$ 99,99 (>99,99). A segunda expressão exibe registros nos quais o preço unitário é maior do que ou igual a R$ 99,99.
Contêm um de dois valores, como 20 ou 25 20 ou 25 Retorna registros nos quais o preço unitário é R$ 20,00 ou R$ 25,00.
Contêm um valor que está em um intervalo de valores >49,99 e <99,99
-ou-
Entre 50 e 100
Retorna registros nos quais o preço unitário está entre (mas não incluindo) R$ 49,99 e R$ 99,99.
Contêm um valor que está fora de um intervalo <50 ou >100 Retorna registros nos quais o preço unitário não está entre R$ 50,00 e R$ 100,00.
Contêm um de muitos valores especificados Em(20, 25, 30) Retorna registros nos quais o preço unitário é R$ 20,00, R$ 25,00 ou R$ 30,00.
Contêm um valor que termina com os dígitos especificados Como "*4,99"

Retorna registros nos quais o preço unitário termina com "4,99", como R$ 4,99, R$ 14,99, R$ 24,99, etc.

 Observação   Os caracteres * e %, quando usados em uma expressão, representam qualquer número de caracteres — são também chamados de caracteres curinga. O caractere % não pode ser usado na mesma expressão que o caractere *, nem pode ser usado em uma expressão com o caractere curinga ?. Você pode usar o caractere curinga % em uma expressão que também contenha o caractere curinga _.

Contêm valores nulos (ou ausentes) É Nulo Retornam registros nos quais nenhum valor é inserido no campo PreçoUnitário.
Contêm valores não nulos É Negado Nulo Retorna registros nos quais o valor não está ausente no campo PreçoUnitário.

Início da página Início da página

Critérios para campos Data/Hora

Os exemplos a seguir são para o campo DataDoPedido, em um consulta com base em uma tabela que armazena informações sobre pedidos. O critério especificado na linha Critérios do campo, na grade de design da consulta.

Critérios DataDoPedido

Para incluir registros que... Use este critério Resultado da consulta
Correspondem totalmente a um valor, como 2/2/2006 #02.02.06# Retorna registros de transações que ocorreram em 2 de fevereiro de 2006. Lembre-se de incluir os valores de data entre os caracteres # para que o Access possa distinguir entre valores de data e cadeias de texto.
Não correspondem a um valor, como 2/2/2006 Não #2/2/2006# Retorna registros de transações que ocorreram em um dia diferente de 2 de fevereiro de 2006.
Contêm valores que estão antes de um determinado valor, como 2/2/2006 < #2/2/2006#

Retorna registros de transações que ocorreram antes de 2 de fevereiro de 2006.

Para visualizar transações que ocorreram nessa data ou antes dessa data, use o operador <=, em vez do operador < .

Contêm valores que estão depois de uma determinada data, como 2/2/2006 > #2/2/2006#

Retorna registros de transações que ocorreram depois de 2 de fevereiro de 2006.

Para visualizar transações que ocorreram nessa data ou depois dessa data, use o operador >=, em vez do operador >.

Contêm valores que estão em um intervalo de datas >#2/2/2006# e <#2/4/2006#

Retorna registros nos quais as transações ocorreram entre 2 de fevereiro de 2006 e 4 de fevereiro de 2006.

Você também pode usar o operador Entre para filtrar um intervalo de valores. Por exemplo, Entre #2/2/2006# e #2/4/2006# é o mesmo que >#2/2/2006# e <#2/4/2006#.

Contêm valores que estão fora de um intervalo <#2/2/2006# ou >#2/4/2006# Retorna registros nos quais as transações ocorreram antes de 2 de fevereiro de 2006 ou depois de 4 de fevereiro de 2006.
Contêm um de dois valores, como 2/2/2006 ou 2/3/2006 #2/2/2006# ou #2/3/2006# Retorna registros de transações que ocorreram em 2 de fevereiro de 2006 ou 3 de fevereiro de 2006.
Contêm um de muitos valores Em (#2/1/2006#, #3/1/2006#, #4/1/2006#) Retorna registros nos quais as transações ocorreram em 1 de fevereiro de 2006, 1 de março de 2006 ou 1 de abril de 2006.
Contêm uma data que está em um mês específico (independente do ano), como dezembro PartData("m", [DataDaVenda]) = 12 Retorna registros nos quais as transações ocorreram em dezembro de algum ano.
Contêm uma data que está em um trimestre específico (independente do ano), como o primeiro trimestre PartData("t", [DataDaVenda]) = 1 Retorna registros nos quais as transações ocorreram no primeiro trimestre de qualquer ano.
Contêm a data de hoje Data( ) Retorna registros de transações que ocorreram no dia atual. Se a data atual for 2/2/2006, você verá registros nos quais o campo DataDoPedido está definido como 2 de fevereiro de 2006.
Contêm a data de ontem Data()-1 Retorna registros de transações que ocorreram no dia anterior ao dia atual. Se a data de hoje for 2/2/2006, você verá registros para 1 de fevereiro de 2006.
Contêm a data de amanhã Data() + 1 Retorna registros de transações que ocorreram no dia seguinte ao dia atual. Se a data de hoje for 2/2/2006, você verá registros para 3 de fevereiro de 2006.
Contêm datas que estão na semana atual PartData("ss", [DataDaVenda]) = PartData("ss", Data()) e Ano( [DataDaVenda]) = Ano(Data()) Retorna registros de transações que ocorreram durante a semana atual. Um semana inicia no domingo e termina no sábado.
Contêm datas que estão na semana anterior Ano([DataDaVenda])* 53 + PartData("ss", [DataDaVenda]) = Ano(Data())* 53 + PartData("ss", Data()) - 1 Retorna registros de transações que ocorreram durante a última semana. Uma semana inicia no domingo e termina no sábado.
Contêm datas que estão na semana seguinte Ano([DataDaVenda])* 53+PartData("ss", [DataDaVenda]) = Ano(Data())* 53+PartData("ss", Data()) + 1 Retorna registros de transações que ocorrerão na próxima semana. Uma semana inicia no domingo e termina no sábado.
Contêm uma data que está nos últimos 7 dias Entre Data() e Data()-6 Retorna registros de transações que ocorreram nos últimos 7 dias. Se a data de hoje for 2/2/2006, você verá registros para o período de 24 de janeiro de 2006 a 2 de fevereiro de 2006.
Contêm uma data que pertence ao mês atual Ano([DataDaVenda]) = Ano(Agora()) E Mês([DataDaVenda]) = Mês(Agora()) Retorna registros para o mês atual. Se a data de hoje for 2/2/2006, você verá registros para fevereiro de 2006.
Contêm uma data que pertence ao mês anterior Ano([DataDaVenda])* 12 + PartData("m", [DataDaVenda]) = Ano(Data())* 12 + PartData("m", Data()) - 1 Retorna registros para o mês anterior. Se a data de hoje for 2/2/2006, você verá registros para janeiro de 2006.
Contêm uma data que pertence ao mês seguinte Ano([DataDaVenda])* 12 + PartData("m", [DataDaVenda]) = Ano(Data())* 12 + PartData("m", Data()) + 1 Retorna registros para o mês seguinte. Se a data de hoje for 2/2/2006, você verá registros para março de 2006.
Contêm uma data que está nos últimos 30 ou 31 dias Entre Data( ) E SomData("M", -1, Data( )) Um mês válido de registros de vendas. Se a data de hoje for 2/2/2006, você verá registros para o período de 2 de janeiro de 2006 a 2 de fevereiro de 2006
Contêm uma data que pertence ao trimestre atual Ano([DataDaVenda]) = Ano(Agora()) E PartData("t", Data()) = PartData("t", Agora()) Retorna registros para o trimestre atual. Se a data de hoje for 2/2/2006, você verá registros para o primeiro trimestre de 2006.
Contêm uma data que pertence ao trimestre anterior Ano([DataDaVenda])*4+PartData("t",[DataDaVenda]) = Ano(Data())*4+PartData("t",Data())- 1 Retorna registros para o trimestre anterior. Se a data de hoje for 2/2/2006, você verá registros para o último trimestre de 2005.
Contêm uma data que pertence ao próximo trimestre Ano([DataDaVenda])*4+PartData("t",[DataDaVenda]) = Ano(Data())*4+PartData("t",Data())+1 Retorna registros para o próximo trimestre. Se a data de hoje for 2/2/2006, você verá registros para o segundo trimestre de 2006.
Contêm uma data que está no ano atual Ano([DataDaVenda]) = Ano(Data()) Retorna registros para o ano atual. Se a data de hoje for 2/2/2006, você verá registros para o ano de 2006.
Contêm uma data que pertence ao ano anterior Ano([DataDaVenda]) = Ano(Data()) - 1 Retorna registros de transações que ocorreram no ano anterior. Se a data de hoje for 2/2/2006, você verá registros para o ano de 2005.
Contêm uma data que pertence ao próximo ano Ano([DataDaVenda]) = Ano(Data()) + 1 Retorna registros de transações com a data do ano seguinte. Se a data de hoje for 2/2/2006, você verá registros para o ano de 2007.
Contêm uma data que está entre 1 de janeiro e hoje (registros do ano até a data atual) Ano([DataDaVenda]) = Ano(Data()) e Mês([DataDaVenda]) <= Mês(Data()) e Dia([DataDaVenda]) <= Dia (Data()) Retorna registros de transações com datas que estão entre 1 de janeiro do ano atual e hoje. Se a data de hoje for 2/2/2006, você verá registros para o período de 1 de janeiro de 2006 a 2 de fevereiro de 2006.
Contêm uma data que ocorreu no passado < Data() Retorna registros de transações que ocorreram antes do dia de hoje.
Contêm uma data que ocorrerá no futuro > Data() Retorna registros de transações que ocorrerão depois do dia de hoje.
Filtrar valores nulos (ou ausentes) É Nulo Retorna registros nos quais a data de transação está ausente.
Filtrar valores não nulos É Negado Nulo Retorna registros nos quais a data de transação é conhecida.

Início da página Início da página

Critérios para outros campos

Tipo de campo Como aplicar critérios
Sim/Não  Na linha Critérios, digite Sim para incluir registros nos quais a caixa de seleção está marcada. Digite Não para incluir registros nos quais a caixa de seleção não está marcada.
Anexo  Na linha Critérios, digite É Nulo para incluir registros que não contêm anexos. Digite É Negado Nulo para incluir registros que contêm anexos.
Pesquisa

Existem dois tipos básicos de campos Pesquisa: os que pesquisam valores em uma fonte de dados existente (usando uma chave estrangeira) e os que são baseados em uma lista de valores especificados quando o campo Pesquisa é criado.

Os campos de pesquisa que são baseados em uma lista de valores especificados são do tipo de dados Texto e os critérios válidos são os mesmos que para os outros campos de texto.

Os critérios que você pode usar em um campo de pesquisa baseado em valores de uma fonte de dados existente dependem do tipo de dados da chave estrangeira, em vez de depender do tipo de dados que estão sendo pesquisados. Por exemplo, você pode ter um campo de pesquisa que exibe o Nome do funcionário, mas utiliza uma chave estrangeira, que tem tipo de dados Número. Como o campo armazena um número, em vez de texto, use os critérios que funcionam para números, ou seja, >2

Se você não souber o tipo de dados da chave estrangeira, poderá verificar a tabela de origem no modo Design para determinar os tipos de dados do campo. Para fazer isso:

  1. Localize a tabela de origem no Painel de Navegação.
  2. Abra a tabela no modo Design seguindo um destes procedimentos:
    • Clicando na tabela e pressionando CTRL+ENTER
    • Clicando com o botão direito do mouse na tabela e clicando em Modo Design.
  3. O tipo de dados de cada campo é listado na coluna Tipo de Dados da grade de design da tabela.
Múltiplos valores

Os dados de um campo de múltiplos valores são armazenados como linhas em uma tabela oculta que o Office Access 2007 cria e popula para representar o campo. No modo Design da consulta, isso é representado na Lista de Campos por meio de um campo expansível. Para usar critérios para um campo de múltiplos valores, forneça critérios para uma única linha da tabela oculta. Para fazer isso:

  1. Crie uma consulta que contém o campo de múltiplos valores e abra a consulta no modo Design.
  2. Expanda o campo de múltiplos valores clicando no símbolo de adição (+) ao lado dele — se o campo já estiver expandido, aparecerá um sinal de subtração (-). Logo abaixo do nome do campo, você verá um campo representando um valor único do campo de múltiplos valores. Esse campo terá o mesmo nome do campo de múltiplos valores, com o acréscimo da cadeia .Valor.
  3. Arraste o campo de múltiplos valores e o campo de valor único correspondente para colunas separadas na grade de design. Se quiser visualizar apenas o campo completo de múltiplos valores nos resultados, desmarque a caixa de seleção Mostrar referente ao campo de valor único.
  4. Digite os critérios na linha Critérios do campo de valor único usando os critérios adequados ao tipo de dados representado pelos valores.

Cada valor no campo de múltiplos valores será avaliado individualmente por meio dos critérios fornecidos. Por exemplo, suponha que você tenha um campo de múltiplos valores que armazene uma lista de números. Se você fornecer os critérios >5 E <3, qualquer registro em que haja pelo menos um valor maior do que 5 e um valor menor do que 3 será encontrado.

Início da página Início da página

 
 
Aplica-se a:
Access 2010