Pesquisar todo o conteúdo do Office.com
 
Suporte / Access / Ajuda e instruções do Access 2007 / Consultas
 
 

Localizar, ocultar ou eliminar dados duplicados

Aplica-se a: Microsoft Office Access 2007

 

Este artigo explica como localizar e ocultar ou eliminar dados duplicados usando o Microsoft Office Access 2007. Via de regra, é recomendável excluir os valores duplicados sempre que possível para reduzir custos e aumentar a precisão dos seus dados. O Office Access 2007 oferece diversas maneiras de localizar e ocultar ou excluir valores duplicados, e este artigo explica como usar os métodos mais comuns.

O que deseja fazer?


Entender os dados duplicados

Uma das principais razões para usar um banco de dados relacional é evitar dados duplicados. Entretanto, com o passar do tempo, os bancos de dados freqüentemente adquirem valores duplicados, principalmente quando vários usuários inserem dados. Normalmente, a eliminação de dados duplicados economiza custos de armazenamento e aumenta a precisão dos dados. Essa precisão, por sua vez, pode ajudar você a tomar melhores decisões de negócios. Por exemplo, se você inserir um pedido de venda mais de uma vez, o cliente poderá receber produtos desnecessários e a redundância poderá acarretar despesas adicionais de envio e contabilidade.

O que a duplicação realmente significa

Antes de começar a identificar e excluir registros duplicados, lembre-se de que você terá que depender do seu próprio conhecimento dos dados. Diferentemente do processo de criação de um banco de dados, não é possível seguir um conjunto de regras ou procedimentos específicos para localizar com precisão os registros duplicados. Lembre-se deste fato antes de prosseguir: as consultas a bancos de dados podem retornar registros que parecem ser duplicados mas, na verdade, são dados válidos. Essa aparente duplicação geralmente acontece quando não são incluídos na consulta campos que identifiquem cada registro de maneira exclusiva. Para obter mais informações sobre a inclusão em uma consulta dos campos necessários para evitar falsas duplicatas, consulte a seção Entender quando os registros não são duplicatas, mais adiante neste artigo.

Além disso, você deve ter em mente que não é possível excluir todos os dados duplicados, pois alguma duplicação é necessária para que o banco de dados funcione adequadamente. Em outras palavras, os bancos de dados podem conter redundâncias tanto necessárias como desnecessárias, e você deve eliminar somente as redundâncias desnecessárias.

As redundâncias necessárias geralmente se enquadram em duas categorias. O primeiro tipo de redundância permite que o banco de dados funcione. Por exemplo, os dados de um campo de chave primária são duplicados sempre que é necessário estabelecer uma relação um-para-muitos ou muitos-para-muitos entre tabelas.

O segundo tipo de redundância necessária surge durante o uso do banco de dados. Por exemplo, talvez você insira muitas vezes o nome de uma cidade, de um fornecedor, ou um nome comum como João da Silva. Quando isso acontece, não há qualquer risco de duplicação de dados porque outros campos do banco de dados (como os valores das chaves primárias, os endereços e os CEPs) contêm informações exclusivas suficientes para impedir que os registros sejam considerados como duplicatas.

As redundâncias desnecessárias podem ocorrer de diversas maneiras:

  • Dois ou mais registros podem conter campos duplicados.    Dois registros podem ser considerados como duplicatas mesmo quando nem todos os respectivos campos contêm valores correspondentes. Por exemplo, nesta figura você pode ver dois registros referentes a Antonio Moreno Taquería.

Registros duplicados de um cliente na tabela Clientes

Embora cada registro tenha um código exclusivo de cliente (o valor na primeira coluna à esquerda), os valores de Nome, Endereço e Cidade são correspondentes. Nessas situações, mesmo uma correspondência parcial pode ser uma boa razão para usar seus conhecimentos sobre a sua própria empresa e rever os registros para verificar se são duplicados.

  • Duas ou mais tabelas podem conter dados semelhantes.    Por exemplo, talvez você constate que a tabela Clientes e a tabela Compradores possuem registros sobre os mesmos clientes.

Tabelas Compradores e Clientes com dados sobrepostos

Como ambas as tabelas, embora suas estruturas possam ser diferentes, contêm os mesmos tipos de informações  — dados sobre clientes — talvez seja aconselhável mesclar todos os valores exclusivos (não duplicados) em uma única tabela e eliminar a tabela extra.

  • Dois ou mais bancos de dados podem conter dados semelhantes.    Se você constatar que dois ou mais bancos de dados contêm dados semelhantes, ou herdar um banco de dados que contém redundâncias com relação ao seu banco de dados atual, é aconselhável comparar os dados e as estruturas de ambos e tomar as providências necessárias para consolidá-los.

A comparação manual de bancos de dados, mesmo pequenos, não é uma tarefa fácil. Se você precisar de ajuda para fazer essa comparação, existem várias ferramentas produzidas por terceiros para comparar o conteúdo e a estrutura de bancos de dados do Access.

Visite a seção Gerenciamento de banco de dados do Microsoft Office Marketplace para verificar quais são as ferramentas de gerenciamento de banco de dados disponíveis atualmente.

 Observação   Se, mesmo depois de adotar as medidas necessárias para eliminar dados duplicados das suas tabelas, você ainda encontrar dados duplicados em um formulário ou em um relatório, talvez isso seja devido ao design incorreto do formulário ou relatório. Verifique se as tabelas e consultas de base foram associadas corretamente e se as seções do formulário ou relatório não incluem mais de um controle ligado à mesma fonte de controle.

Para obter mais informações sobre design de relatórios, consulte o artigo Modificar, editar ou alterar um relatório.

Entender quando os registros não são duplicatas

Em certas situações, como durante a exibição de dados retornados por uma consulta, você pode ver algo que se assemelhe a dados duplicados, mesmo que as tabelas de base aparentemente só contenham registros exclusivos. Esse tipo de problema pode surgir quando o modo de exibição não inclui campos que identifiquem exclusivamente um registro. Por exemplo, esta figura mostra os dados retornados por uma consulta.

Um modo de exibição que não inclui um campo que poderia identificar exclusivamente os registros

Neste modo de exibição, vários registros parecem estar duplicados. Se você incluir um ou mais campos adicionais na consulta, como os nomes dos clientes ou os campos de chave primária de cada pedido (Código do Pedido), verá que na verdade cada registro é único, como nesta figura:

Agora o modo de exibição inclui o campo CódigoDoPedido para eliminar os registros duplicados

Via de regra, ao criar uma consulta, você deve incluir um ou mais campos que identifiquem cada registro de maneira exclusiva. Normalmente, um campo de chave primária é apropriado para essa finalidade, mas você também pode usar combinações de outros campos. Por exemplo, mesmo que haja muitas instâncias de um mesmo nome de contato e muitas instâncias de um nome de cidade, se você incluir o número de telefone e o endereço, essa combinação de dados deverá tornar cada registro único.

Fatores a considerar ao lidar com a duplicação

A forma apropriada para lidar com registros duplicados depende de vários fatores:

  • A natureza e a extensão da duplicação    Você vê dados duplicados dentro de uma mesma tabela, ou vê duas tabelas semelhantes (no mesmo banco de dados ou em dois bancos de dados diferentes) com dados redundantes? Ou então, você vê registros duplicados em um modo de exibição que é baseado em duas ou mais tabelas relacionadas?
  • Seus requisitos específicos    O que você pretende fazer com os dados duplicados? Deseja excluir os registros do banco de dados ou apenas ocultá-los do modo de exibição? Deseja contar, calcular a média ou somar os valores dos registros duplicados? É relevante saber qual dos registros duplicados será excluído ou oculto? Em caso afirmativo, você prefere examinar e excluir manualmente os registros ou quer que eles sejam excluídos com base em uma condição? Você também deseja atualizar ou consolidar um ou mais registros antes de começar a excluir registros?

As respostas a estas perguntas (ou a estes tipos de perguntas), somadas ao seu conhecimento dos dados, provavelmente permitirão criar um plano para lidar com os dados redundantes.

Preparativos gerais para remover duplicatas

Se você optar pela exclusão dos registros duplicados, terá que lidar primeiro com as relações existentes na tabela. Normalmente, a maioria dos bancos de dados usa relações um-para-muitos. Por exemplo, talvez você tenha um pequeno número de clientes, mas cada cliente gera muitos pedidos. Conseqüentemente, a tabela de dados de clientes reside no lado "um" e os dados sobre pedidos residem no lado "muitos" da relação.

Ao prosseguir, lembre-se desta regra: se os dados que você deseja excluir estiverem no lado "muitos" de uma relação, eles poderão ser excluídos sem adotar medidas adicionais. Porém, se os dados residirem no lado "um", você terá que definir uma propriedade na relação. Caso contrário, o Access impedirá a exclusão.

Para obter mais informações sobre a exclusão de dados do lado "um", consulte o artigo Usar uma consulta exclusão para excluir um ou mais registros de um banco de dados.

Antes de começar a excluir dados redundantes, considere uma ou mais destas maneiras de preparar o banco de dados:

  • Verifique se o banco de dados não é somente leitura.
  • Verifique se você tem todas as permissões necessárias para editar ou excluir registros do banco de dados.
  • Peça a outros usuários do banco de dados para fecharem os objetos com os quais você deseja trabalhar. Isso ajudará a evitar violações de bloqueio.

 Dica   Se um grande número de usuários conecta-se ao banco de dados, talvez seja necessário fechar o banco de dados e abri-lo novamente em modo exclusivo. Para fazer isso, clique no Botão Microsoft OfficeImagem de botão do Access e depois clique em Abrir. Procure o banco de dados, selecione-o, clique na seta ao lado do botão Abrir e clique em Abrir Exclusivo.

Abrindo um arquivo no modo Exclusivo

  • Faça um backup do banco de dados antes de excluir registros. Não é possível reverter ou desfazer uma operação de exclusão. A única maneira de recuperar registros excluídos é restaurá-los do backup. Como uma operação de exclusão também pode excluir registros em tabelas relacionadas, é aconselhável fazer um backup de todo o banco de dados antes de iniciar a operação.

Fazer backup de um banco de dados

  1. Clique no Botão Microsoft OfficeImagem de botão, clique na seta ao lado de Gerenciar e clique em Fazer Backup de Banco de Dados.

A caixa de diálogo Salvar como aparecerá e o Access acrescentará a data atual ao nome do arquivo. Por exemplo, se você tiver um banco de dados chamado Ativos, o Access criará um arquivo com este nome: Ativos_2006-10-29.

  1. Aceite o nome e local padrão ou selecione outro nome e local e clique em Salvar.

O Access fechará o arquivo original, criará um backup e abrirá novamente o arquivo original.

Para reverter para um backup, feche e renomeie o arquivo original para que a cópia de backup possa usar o nome da versão original. Atribua o nome da versão original à cópia de backup e abra-a no Access.

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

Preparar alguns dados de exemplo

As seções "como" neste artigo fornecem tabelas de dados de exemplo. As etapas "como" usam as tabelas de exemplo para ajudá-lo a entender como as consultas funcionam. Se você preferir, poderá opcionalmente inserir ou importar tabelas de exemplo em um banco de dados novo ou existente.

O Access oferece várias formas de adicionar essas tabelas de exemplo em um banco de dados. Você pode inserir dados manualmente, pode copiar cada tabela em um programa de planilha (tal como o Office Excel 2007) e importar as planilhas para o Access, ou pode colar os dados em um editor de texto, tal como o Bloco de Notas, e importá-los dos arquivos de texto resultantes.

As etapas desta seção explicam como inserir dados manualmente em uma folha de dados em branco, e também como copiar as tabelas de exemplo para o Excel e importar essas tabelas no Access 2007. Para obter mais informações sobre como criar e importar dados de texto, consulte o artigo Importar ou vincular dados em um arquivo de texto.

As etapas "como" deste artigo usam as seguintes tabelas:

A tabela Clientes:

Nome da Empresa Nome do Contato Endereço Cidade CEP Telefone
Baldwin Museum of Science Josh Barnhill 1 Main St. Nova York 12345 (505) 555-2122
Blue Yonder Airlines Waleed Heloo 52 1st St. Boston 23456 (104) 555-2123
Coho Winery Pica Guido 3122 75th Ave. S.W. Seattle 34567 (206) 555-2124
Contoso Pharmaceuticals Jean Philippe Bagel 1 Contoso Blvd. Londres NS1 EW2 (171) 555-2125
Fourth Coffee Julian Price Calle Smith 2 Cidade do México 56789 (7) 555-2126
Coho Winery Christine Hughes 3122 75th St. S. Seattle 34567 (206) 555-2125
Humongous Insurance Steve Riley 67 Big St. Tampa 01234 (916) 555-2128
Trey Research Dana Birkby 2 Nosey Pkwy Portland 43210 (503) 555-2129
Fourth Coffee Reshma Patel Calle Smith 2 Cidade do México 56789 (7) 555-2233

A tabela Funcionários:

Sobrenome Nome Endereço Cidade Data de Nascimento Data de Contratação
Barnhill Josh 1 Main St. Nova York 05-fev-1968 10-jun-1994
Heloo Waleed 52 1st St. Boston 22-mai-1957 22-nov-1996
Guido Pica 3122 75th Ave. S.W. Seattle 11-nov-1960 11-mar-2000
Bagel Jean Philippe 1 Contoso Blvd. Londres 22-mar-1964 22-jun-1998
Price Julian Calle Smith 2 Cidade do México 05-jun-1972 05-jan-2002
Hughes Christine 3122 75th St. S. Seattle 23-jan-1970 23-abr-1999
Riley Steve 67 Big St. Tampa 14-abr-1964 14-out-2004
Birkby Dana 2 Nosey Pkwy Portland 29-out-1959 29-mar-1997
Bagel Jean Philippe 1 Contoso Blvd. Londres 22-mar-1964 20-jun-1998

A tabela Quantia Devida:

Nome da Empresa Nome do Contato Endereço Cidade CEP Telefone Quantia Devida
Baldwin Museum of Science Josh Barnhill 1 Main St. Nova York 12345 (505) 555-2122 R$ 556,78
Blue Yonder Airlines Waleed Heloo 52 1st St. Boston 23456 (104) 555-2123 R$ 1.893,24
Coho Winery Pica Guido 3122 75th Ave. S.W. Seattle 34567 (206) 555-2124 R$ 321,79
Contoso Pharmaceuticals Jean Philippe Bagel 1 Contoso Blvd. Londres NS1 EW2 (171) 555-2125 £ 457,68
Fourth Coffee Julian Price Calle Smith 2 Cidade do México 56789 (7) 555-2126 R$ 98,75
Coho Winery Christine Hughes 3122 75th St. S. Seattle 34567 (206) 555-2125 R$ 321,79
Humongous Insurance Steve Riley 67 Big St. Tampa 01234 (916) 555-2128 R$ 297,45
Trey Research Dana Birkby 2 Nosey Pkwy Portland 43210 (503) 555-2129 R$ 509,09
Fourth Coffee Reshma Patel 2 Calle Smith Cidade do México 56789 (7) 555-2233 R$ 98,75

A tabela Compradores :

Nome Endereço Cidade Telefone Fax
Baldwin Museum of Science 1 Main St. Nova York (505) 555-2122 (505) 555-2122
Blue Yonder Airlines 52 1st St. Boston (104) 555-2123 (104) 555-2123
Coho Winery 3122 75th Ave. S.W. Seattle (206) 555-2124 (206) 555-2124
Contoso Pharmaceuticals 1 Contoso Blvd. Londres (171) 555-2125 (171) 555-2125
Fourth Coffee Calle Smith 2 Cidade do México (7) 555-2126 (7) 555-2126
Consolidated Messenger 3122 75th St. S. Seattle (206) 555-2125 (206) 555-2129
Graphic Design Institute 67 Big St. Tampa (916) 555-2128 (916) 555-2128
Litware, Inc. 3 Microsoft Way Portland (503) 555-2129 (503) 555-2110
Tailspin Toys 4 Microsoft Way Portland (503) 555-2233 (503) 555-2239

Inserir os dados de exemplo manualmente

  1. Na guia Criar, no grupo Tabelas, clique em Tabela.

Imagem da Faixa de Opções do Access

O Access adiciona uma tabela nova, em branco, ao banco de dados.

 Observação   Você não precisa seguir esta etapa, caso abra um banco de dados novo, em branco, mas precisará segui-la sempre que precisar adicionar uma tabela ao banco de dados.

  1. Clique duas vezes na primeira célula na linha do cabeçalho e digite o nome do campo na tabela de exemplo.

Por padrão, o Access indica os campos em branco na linha do cabeçalho com o texto Adicionar Novo Campo, da seguinte forma:

Um novo campo em uma folha de dados

  1. Use as teclas de direção para mover o texto para a célula do cabeçalho em branco, e digite o segundo nome de campo (você também pode pressionar TAB ou clicar duas vezes em uma nova célula). Repita esta etapa até inserir todos os nomes de campo.
  2. Inserir os dados na tabela de exemplo.

Conforme você insere dados, o Access deduz o tipo de dados de cada campo. Se você não tem experiência com bancos de dados relacionais, defina um tipo de dados específico, tal como Número, Texto ou Data/Hora, para cada um dos campos de suas tabelas. A definição dos tipos de dados ajuda a garantir a precisão das entradas de dados e também ajuda a prevenir erros, tal como usar um número de telefone em um cálculo. Para essas tabelas de exemplo, você deve deixar o Access deduzir o tipo de dados.

  1. Quando você terminar de inserir os dados, clique em Salvar.

Atalho do teclado  Pressione CTRL+S.

A caixa de diálogo Salvar como é exibida.

  1. Na caixa Nome da Tabela, digite o nome da tabela de exemplo e clique em OK.

Você usa o nome de cada tabela de exemplo porque as consultas nas seções "como" usam esses nomes.

Criar as planilhas de exemplo

  1. Inicie seu programa de planilha e crie um arquivo novo, em branco. Se você usa Excel, uma pasta de trabalho nova, em branco, é criada por padrão.
  2. Copie a primeira tabela de exemplo da seção anterior e cole-a na primeira planilha, começando pela primeira célula.
  3. Usando a técnica fornecida pelo programa de planilha, dê à planilha o mesmo nome da tabela de exemplo. Por exemplo, se a tabela de exemplo é chamada de Categorias, dê o mesmo nome à sua planilha.
  4. Repita as etapas 2 e 3, copiando cada tabela de exemplo para uma planilha vazia e renomeando a planilha.

 Observação   Talvez seja necessário adicionar planilhas ao arquivo de planilha. Para obter informações sobre como realizar essa tarefa, consulte a ajuda do programa de planilha.

  1. Salve a pasta de trabalho em um local adequado no seu computador ou na sua rede e vá para o próximo conjunto de etapas.

Criar tabelas de banco de dados a partir das planilhas

  1. Em um banco de dados novo ou existente:

Na guia Dados Externos, no grupo Importar, clique em Excel.

Imagem da Faixa de Opções do Access

-ou-

Clique em Mais e selecione um programa de planilha na lista.

A caixa de diálogo Obter Dados Externos - Planilha do Nome do Programa é exibida.

  1. Clique em Procurar, abra o arquivo de planilha que você criou nas etapas anteriores e clique em OK.

O Assistente de Importação de Planilha é iniciado.

  1. Por padrão, o assistente seleciona a primeira planilha da pasta de trabalho (Clientes, se você seguiu as etapas da seção anterior) e os dados dessa planilha aparecem na seção inferior da página do assistente. Clique em Avançar.
  2. Na próxima página do assistente, clique em A primeira linha contém títulos de coluna e em Avançar.
  3. Opcionalmente, na página seguinte, use as caixas de texto e as listas em Opções de Campo para alterar nomes de campo e tipos de dados ou para omitir campos da operação de importação. Do contrário, clique em Avançar.
  4. Deixe a opção Permitir que o Access adicione a chave primária selecionada e clique em Avançar.
  5. Por padrão, o Access aplica o nome da planilha à nova tabela. Aceite o nome ou digite outro nome e clique em Concluir.
  6. Repita as etapas de 1 a 7 para criar uma tabela a partir de cada planilha da pasta de trabalho do Excel.

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

Localizar e editar, ocultar ou excluir dados duplicados em uma única tabela

As etapas das próximas seções explicam as maneiras mais comuns de localizar e editar, ocultar ou excluir valores duplicados em uma única tabela.



Localizar registros com correspondência total ou parcial entre alguns campos

O processo de localização de registros contendo valores total ou parcialmente correspondentes segue estas etapas gerais:

  • Crie uma consulta usando o Assistente Localizar Duplicatas. Por padrão, a consulta só retorna registros nos quais há uma correspondência caractere a caractere nos valores de cada campo. Se precisar localizar correspondências parciais, use uma expressão na consulta ou altere o código SQL (Structured Query Language).
  • Opcionalmente, edite os valores dos campos ou exclua registros quando os resultados da consulta estiverem sendo exibidos no modo Folha de Dados.
  • Opcionalmente, altere o código SQL da consulta para localizar valores com correspondência parcial. Se você não alterar o código SQL, a consulta só retornará os registros em que haja uma correspondência caractere a caractere nos valores dos campos especificados.

As etapas desta seção explicam como criar uma consulta de duplicatas e como alterar a consulta para localizar correspondências parciais. Essas etapas usam a tabela Clientes, que é fornecida abaixo. Para usá-la em um banco de dados, consulte a seção Preparar alguns dados de exemplo, anteriormente descrita neste documento. Você pode adaptar as etapas para que se ajustem aos seus dados.

Nome da Empresa Nome do Contato Endereço Cidade CEP Telefone
Baldwin Museum of Science Josh Barnhill 1 Main St. Nova York 12345 (505) 555-2122
Blue Yonder Airlines Waleed Heloo 52 1st St. Boston 23456 (104) 555-2123
Coho Winery Pica Guido 3122 75th Ave. S.W. Seattle 34567 (206) 555-2124
Contoso Pharmaceuticals Jean Philippe Bagel 1 Contoso Blvd. Londres NS1 EW2 (171) 555-2125
Fourth Coffee Julian Price Calle Smith 2 Cidade do México 56789 (7) 555-2126
Coho Winery Christine Hughes 3122 75th St. S. Seattle 34567 (206) 555-2125
Humongous Insurance Steve Riley 67 Big St. Tampa 01234 (916) 555-2128
Trey Research Dana Birkby 2 Nosey Pkwy Portland 43210 (503) 555-2129
Fourth Coffee Reshma Patel Calle Smith 2 Cidade do México 56789 (7) 555-2233

Criar a consulta de duplicatas

  1. Na guia Criar, no grupo Outros, clique em Assistente de Consulta.

Imagem da Faixa de Opções do Access

  1. Na caixa de diálogo Nova Consulta, clique em Assistente de Consulta Localizar Duplicatas e clique em OK.

Se aparecer uma mensagem de alerta informando que esse recurso não está instalado, clique em Sim para instalar o assistente.

  1. Na lista de tabelas, selecione a tabela que contém os dados duplicados e clique em Avançar
  2. Na lista de campos disponíveis, selecione somente um ou mais campos que contenham informações duplicadas. Se estiver usando a tabela Clientes, adicione somente os campos Nome da Empresa, Endereço e Cidade, pois são os únicos que contêm valores absolutamente compatíveis. Clique em Avançar.

 Observação   Se os campos adicionados nesta etapa não contiverem correspondências caractere a caractere, talvez a consulta não retorne nenhum resultado.

  1. Na lista de campos disponíveis, selecione um ou mais campos contendo os dados que você deseja inspecionar ou atualizar, ou dados que poderão ajudar a distinguir registros duplicados de registros não duplicados. Se estiver usando a tabela Clientes, adicione os campos Nome do Contato e Telefone, pois os dados desses campos podem ajudar a localizar os valores duplicados e, possivelmente, a identificar por que esses valores foram inseridos. Clique em Avançar.
  2. Aceite o nome sugerido (Localizar duplicatas em Clientes) ou digite outro nome e clique em Concluir para executar a consulta. Se você usou a tabela Clientes, o resultado será este:
Nome da Empresa Endereço Cidade Nome do Contato Telefone
Fourth Coffee Calle Smith 2 Cidade do México Julian Price (7) 555-2126
Fourth Coffee Calle Smith 2 Cidade do México Reshma Patel (7) 555-2233
  1. Durante a criação da tabela Clientes, talvez você tenha percebido que havia mais de dois registros duplicados (a tabela contém quatro). Você não está vendo as outras duplicatas porque os valores no campo Endereço não têm uma correspondência caractere a caractere. Você poderia modificar a consulta para retornar valores com correspondência parcial — o próximo conjunto de etapas explica como fazer isso.

Personalizar a consulta para localizar correspondências parciais

  1. Alterne a consulta para o modo SQL. Para fazer isso, você pode:
    • Clicar com o botão direito do mouse na guia do documento da consulta e clicar em Modo SQL.
    • No Painel de Navegação, clicar com o botão direito do mouse na consulta e clicar em Modo SQL.
  2. Modificar o código SQL para localizar e comparar valores parciais.

Se você usou a tabela Clientes nas etapas anteriores, a seguinte instrução SQL será exibida:

SELECT Clientes.[Nome da Empresa], Clientes.[Endereço], Clientes.[Cidades], Clientes.[Nome do Contato], Clientes.[Telefone]
FROM Clientes
WHERE (((Clientes.[Nome da Empresa]) In (SELECT [Nome da Empresa] FROM [Clientes] As Tmp GROUP BY [Nome da Empresa],[Endereço],[Cidade] HAVING Count(*)>1 And [Endereço] = [Compradores].[Endereço] And [Cidade] = [Clientes].[Cidade])))
ORDER BY Clientes.[Nome da Empresa], Clientes.[Endereço], Clientes.[Cidade];

No caso, a cláusula WHERE usa uma segunda instrução SELECT para comparar cada registro com todos os demais registros da tabela de modo a identificar os conjuntos de duplicatas.

Suponha que você precise modificar o campo Endereço para retornar correspondências parciais. A tabela a seguir mostra como modificar a instrução para que somente os sete caracteres iniciais do campo tenham necessariamente que ser compatíveis. As modificações aparecem em negrito:

Instrução SQL Descrição
SELECT Clientes.[Nome da Empresa], Clientes.[Endereço], Clientes.[Cidade], Clientes.[Nome do Contato], Clientes.[Telefone] Nenhuma alteração. Você deseja ver os mesmos campos, inclusive todo o campo Endereço de cada conjunto de registros duplicados.
FROM Clientes Nenhuma alteração.
WHERE (((Cientes.Nome da Empresa) In (SELECT [Nome da Empresa] FROM [Clientes] As Tmp GROUP BY [Nome da Empresa],Left([Endereço],7) ,[Cidade] HAVING Substitua o campo ([Endereço]) por uma chamada de função que opera sobre o campo Endereço (Left([Endereço],7)) para determinar a duplicação. A função testa os sete primeiros caracteres do campo Endereço, em vez de todo o valor do campo. Para testar menos caracteres, digite um número menor. Para testar mais caracteres, digite um número maior.
Contar(*)>1 And Left([Endereço],7) =Left([Clientes].[Endereço],7) And [Cidade] = [Clientes].[Cidade]))) Para comparar os sete primeiros caracteres do campo Endereço de um registro com os mesmos caracteres em outro registro, substitua [Endereço] pela chamada de função Left([Endereço],7) e [Clientes].[Endereço] pela chamada de função Left([Clientes].[Endereço],7).
ORDER BY Clientes.Nome da Empresa, Clientes.Endereço, Clientes.Cidade; Nenhuma alteração.
  1. Depois de modificar a instrução, clique em ExecutarImagem de botão para executar a consulta e exibir os resultados no modo Folha de dados.

Desta vez a consulta retornará todos os quatro registros duplicados, pois a correspondência foi limitada aos sete caracteres iniciais (contados a partir da esquerda) do campo Endereço:

Nome da Empresa Endereço Cidade Nome do Contato Telefone
Coho Winery 3122 75th Ave. S.W. Seattle Pica Guido (206) 555-2124
Coho Winery 3122 75th St. S.W Seattle Christine Hughes (206) 555-2125
Fourth Coffee Calle Smith 2 Cidade do México Julian Price (7) 555-2126
Fourth Coffee Calle Smith 2 Cidade do México Reshma Patel (7) 555-2233

Manually edit records

  1. No modo Folha de Dados, abra a consulta que foi criada nos conjuntos de etapas anteriores.
  2. Execute uma das ações a seguir:
    • Para editar o valor de um campo, selecione o campo e digite o novo valor.
    • Para excluir um registro inteiro (uma linha), clique no seletor de linha (a caixa vazia ao lado da linha) e pressione DELETE.

 Observação   Se encontrar uma grande quantidade de registros duplicados (mais do que seria viável excluir manualmente), você pode excluí-los criando e executando uma consulta exclusão. As etapas básicas da criação e execução de uma consulta exclusão são descritas na seção Usar uma consulta exclusão para excluir registros duplicados, mais adiante neste tópico.

Para obter informações mais completas sobre o uso de consultas exclusão, inclusive informações sobre como planejar uma exclusão e como alterar as relações entre tabelas e excluir dados relacionados, consulte o artigo Usar uma consulta exclusão para excluir um ou mais registros de um banco de dados

Início da seção

Mostrar registros exclusivos ocultando todas as duplicatas

Na maioria das tabelas, há um campo que identifica de maneira exclusiva cada registro, geralmente um campo de chave primária. Quando você cria uma consulta e oculta ou omite esses tipos de campos, é possível que encontre registros que pareçam ser duplicados porque os valores de todos os campos retornados são idênticos.

Por exemplo, esta figura mostra o resultado de uma consulta no qual dois pedidos (na caixa vermelha) parecem estar duplicados.

Uma consulta, baseada na tabela Clientes, na qual dois registros têm valores correspondentes em todos os campos

Entretanto, se a consulta incluísse um campo de chave primária, como um código do pedido, ou algum outro campo que identificasse de maneira exclusiva cada registro, como a data de envio, você perceberia que os registros não estão duplicados. As etapas desta seção explicam como ocultar registros duplicados nos quais todos os valores de campos retornados pela consulta são correspondentes. Por exemplo, você pode ocultar um dos registros de Antonio Moreno Taqueria, mas não os registros de Blauer See Delikatessen, pois seus campos Endereço contêm valores diferentes.

Antes de prosseguir, lembre-se desta regra: dois ou mais registros são considerados duplicados somente quando todos os campos no resultado da consulta contiverem valores idênticos. Se houver diferenças nos valores de um único campo, cada registro será único e você não conseguirá ocultá-los usando as técnicas mostradas aqui. Se quiser ocultar esses tipos de registros duplicados, use uma consulta de totais com uma função agregada, como PRIMEIRO, MÍN, MÁX, e assim por diante. Para obter mais informações sobre como fazer isso, consulte a seção Mostrar registros distintos especificando qual duplicata aparecerá nos resultados, mais adiante neste artigo.

O Access fornece duas maneiras de exibir valores exclusivos em um conjunto de resultados de consulta:

  • Se você ocultou o campo de chave primária (ou algum outro campo que torna o registro único), reexiba essa coluna.
  • Crie uma consulta seleção e defina a propriedade Valores Exclusivos da consulta como Sim. Ao localizar valores duplicados, a consulta exibirá somente uma das duplicatas (a primeira que ela encontrar), ocultando as demais.

As etapas desta seção explicam como usar ambas as técnicas.

Mostrar campos ocultos

  1. Com a consulta aberta no modo Folha de Dados, clique com o botão direito do mouse em qualquer parte da linha de cabeçalho (a linha que contém os cabeçalhos de colunas) e clique em Reexibir Colunas.
  2. Na caixa de diálogo Reexibir Colunas, marque a caixa de seleção ao lado de cada campo que deverá ser adicionado à folha de dados e clique em OK.

Definir a propriedade Valores Exclusivos

 Observação   Depois de definir a propriedade Valores Exclusivos de uma consulta como Sim, você não poderá editar valores de campos ou excluir dados quando a consulta estiver no modo Folha de Dados. Para editar ou excluir dados, abra a tabela de base no modo Folha de Dados.

  1. Na guia Criar, no grupo Outros, clique em Assistente de Consulta.

Imagem da Faixa de Opções do Access

  1. Na caixa de diálogo Nova Consulta, clique em Assistente de Consulta Simples e clique em OK.

Se aparecer uma mensagem de alerta informando que o recurso não está instalado, clique em Sim para instalar o assistente.

  1. Na lista de tabelas, selecione a tabela que contém os registros duplicados e clique em Avançar
  2. Na lista de campos disponíveis, selecione somente um ou mais campos que contenham informações duplicadas e clique em Avançar.
  3. Clique novamente em Avançar sem selecionar qualquer campo adicional. A adição de outros campos pode levar o Access a tratar alguns registros duplicados como registros exclusivos.
  4. Aceite o nome sugerido para a consulta ou digite outro nome, clique em Modificar o design da consulta e clique em Concluir para abrir a consulta no modo Design.
  5. Clique com o botão direito do mouse na área vazia da metade superior do criador de consultas e clique em Propriedades
  6. Na folha de propriedades, localize a propriedade Valores Exclusivos e altere-a para Sim.

Exibindo a folha de propriedades da consulta

  1. Clique em ExecutarImagem de botão para executar a consulta e exibir os resultados no modo Folha de dados. Se os dados contiverem registros duplicados, somente um desses registros aparecerá.

Início da seção

Mostrar registros distintos especificando qual duplicata aparecerá nos resultados

Quando existem registros duplicados, talvez você queira ver somente valores distintos — um registro de cada conjunto de duplicatas. Para consultar um registro duplicado específico, use um tipo de consulta conhecido como consulta de totais. Quando você adiciona campos a uma consulta de totais, a consulta trata cada campo como um grupo, o que permite executar um tipo de função, conhecido como função agregada, nos dados de um grupo. Essas funções, por sua vez, podem retornar um registro de um conjunto de duplicatas.

Há várias maneiras de usar uma consulta de totais e uma função agregada com esses dados:

  • Use a função Primeiro para mostrar somente o primeiro registro inserido.
  • Use a função Último para mostrar somente o último registro inserido.
  • Use a função Máx ou a função Mín para mostrar somente o registro com o menor ou o maior valor em um campo específico. Por exemplo, você poderia mostrar o registro com a data mais recente usando a função Máx ou o registro com a data mais antiga usando a função Mín.

 Observação   Não é possível editar os dados retornados por esse tipo de consulta. Para editar ou excluir dados, abra a tabela de base no modo Folha de Dados.

As etapas desta seção explicam como criar uma consulta para localizar o registro original, o mais recente ou o mais antigo. Essas etapas usam a tabela Funcionários.

Sobrenome Nome Endereço Cidade Data de Nascimento Data de Contratação
Barnhill Josh 1 Main St. Nova York 05-fev-1968 10-jun-1994
Heloo Waleed 52 1st St. Boston 22-mai-1957 22-nov-1996
Guido Pica 3122 75th Ave. S.W. Seattle 11-nov-1960 11-mar-2000
Bagel Jean Philippe 1 Contoso Blvd. Londres 22-mar-1964 22-jun-1998
Price Julian Calle Smith 2 Cidade do México 05-jun-1972 05-jan-2002
Hughes Christine 3122 75th St. S. Seattle 23-jan-1970 23-abr-1999
Riley Steve 67 Big St. Tampa 14-abr-1964 14-out-2004
Birkby Dana 2 Nosey Pkwy Portland 29-out-1959 29-mar-1997
Bagel Jean Philippe 1 Contoso Blvd. Londres 22-mar-1964 20-jun-1998

Se desejar usar a tabela em um banco de dados, consulte as etapas descritas anteriormente neste artigo em Preparar alguns dados de exemplo.

Usar uma consulta de totais

  1. Na guia Criar, no grupo Outros, clique em Design de Consulta.

Imagem da Faixa de Opções do Access

  1. Na caixa de diálogo Mostrar Tabela, clique duas vezes na tabela que contém os dados duplicados e clique em Fechar.

Essa tabela aparecerá na seção superior do criador de consultas.

  1. Adicione somente o campo ou os campos que contêm os dados duplicados. Você pode clicar duas vezes em um campo ou arrastá-lo da janela da tabela para a linha Campo da grade de design.

Se estiver usando a tabela de exemplo Funcionários, adicione os campos Sobrenome, Nome e Data de Nascimento, pois são esses campos que determinam a duplicação.

  1. Adicione o campo que especifica os critérios de seleção.

Na tabela de exemplo Funcionários, você adiciona o campo Data de Contratação, pois esse campo contém dois valores diferentes para o funcionário.

 Observação   Não adicione mais campos à grade. Uma consulta de totais deve incluir somente o campo ou os campos que contêm dados duplicados e mais um campo contendo os dados que serão usados no teste.

  1. Na guia Design, no grupo Mostrar/Ocultar, clique em TotaisImagem do botão. A linha Total aparecerá na grade de design e Agrupar Por aparecerá nas colunas que contêm o campo da tabela.
  2. Deixe a linha Total de todos os campos definida como Agrupar por e clique em ExecutarImagem do botão para executar a consulta e mostrar os resultados no modo Folha de Dados. Se você usou os dados da tabela acima, a consulta retornará "Jean Philippe Bagel" duas vezes, pois seus registros duplicados têm datas de contratação diferentes.
  3. Volte para o modo Design e especifique uma condição para selecionar um registro de cada conjunto de duplicatas. Se estiver usando os dados de exemplo, altere o valor da coluna Data de Contratação na linha Total da seguinte maneira:
    • Para exibir o registro original, altere o valor para Primeiro.
    • Para exibir o registro inserido mais recentemente, altere o valor para Último.
    • Se desejar que o registro seja escolhido com base no valor de um campo específico, você terá que usar as funções Máx ou Mín. Neste exemplo, você deseja exibir o registro com data de contratação mais antiga. Para fazer isso, altere o valor para Mín.
  4. Clique em ExecutarImagem do botão para executar a consulta e exibir os resultados no modo Folha de dados.

Se a consulta produzir os resultados desejados, você poderá alterá-la para uma consulta exclusão e executá-la para excluir os registros duplicados de maneira fácil e rápida. Para obter mais informações sobre como executar uma consulta exclusão, consulte a seção Usar uma consulta exclusão para excluir registros duplicados, mais adiante neste artigo.

Início da seção

Usar funções agregadas (Contar, Soma, Média) em registros duplicados

Além do retorno de um registro específico de um grupo de duplicatas, as funções agregadas também podem ser usadas para contar o número de registros duplicados ou para resumir os dados de um conjunto de duplicatas. Normalmente, essas funções são executadas antes de qualquer iniciativa de consolidação ou exclusão dos dados duplicados.

Essas tarefas são realizadas criando uma consulta de totais que usa funções agregadas, como Contar, Soma ou Média, para resumir os dados duplicados em uma tabela.

 Observação   Não é possível editar os valores dos campos ou excluir registros quando uma consulta de totais está sendo exibida no modo Folha de Dados. Para editar ou excluir dados, abra a tabela de dados no modo Folha de Dados.

As etapas desta seção usam a tabela Quantia Devida.

Nome da Empresa Nome do Contato Endereço Cidade CEP Telefone Quantia Devida
Baldwin Museum of Science Josh Barnhill 1 Main St. Nova York 12345 (505) 555-2122 R$ 556,78
Blue Yonder Airlines Waleed Heloo 52 1st St. Boston 23456 (104) 555-2123 R$ 1.893,24
Coho Winery Pica Guido 3122 75th Ave. S.W. Seattle 34567 (206) 555-2124 R$ 321,79
Contoso Pharmaceuticals Jean Philippe Bagel 1 Contoso Blvd. Londres NS1 EW2 (171) 555-2125 £ 457,68
Fourth Coffee Julian Price Calle Smith 2 Cidade do México 56789 (7) 555-2126 R$ 98,75
Coho Winery Christine Hughes 3122 75th St. S. Seattle 34567 (206) 555-2125 R$ 321,79
Humongous Insurance Steve Riley 67 Big St. Tampa 01234 (916) 555-2128 R$ 297,45
Trey Research Dana Birkby 2 Nosey Pkwy Portland 43210 (503) 555-2129 R$ 509,09
Fourth Coffee Reshma Patel 2 Calle Smith Cidade do México 56789 (7) 555-2233 R$ 98,75

Se desejar usar a tabela em um banco de dados, consulte as etapas descritas anteriormente neste artigo em Preparar alguns dados de exemplo.

Criar uma consulta de totais

  1. Na guia Criar, no grupo Outros, clique em Design de Consulta.

Imagem da Faixa de Opções do Access

  1. Na caixa de diálogo Mostrar Tabela, clique duas vezes na tabela que deseja usar na consulta, ou clique em Adicionar e, em seguida, clique em Fechar para fechar a caixa de diálogo. Se estiver usando os dados de exemplo, adicione a tabela Quantia Devida à consulta.
  2. Adicione os campos que contêm dados duplicados.

Se estiver usando a tabela Quantia Devida, adicione os campos Nome da Empresa e Cidade, pois são esses campos que determinam a duplicação.

  1. Adicione o campo que fornece os critérios de seleção. Se estiver usando a tabela Quantia Devida, adicione o campo Quantia Devida.
  2. Na guia Design, no grupo Mostrar/Ocultar, clique em TotaisImagem do botão. A linha Total aparecerá na grade de design e Agrupar Por aparecerá nessa linha para cada campo.
  3. Dependendo de suas necessidades, adote um destes procedimentos:
    • Para contar o número de registros, selecione o campo que contém os valores que serão contados e altere o valor referente a esse campo na linha Total para Contar. Se estiver usando os dados de exemplo, defina o valor do campo Quantia Devida como Contar.
    • Para calcular a quantia total, defina o valor do campo como Soma

 Observação   Uma consulta de totais só pode exibir informações resumidas. Não é possível exibir os valores individuais.

  1. Clique em ExecutarImagem do botão para executar a consulta e exibir os resultados no modo Folha de dados.

Início da seção

Usar uma consulta exclusão para excluir registros duplicados

Depois de confirmar que uma tabela contém registros duplicados, você pode excluir os dados desnecessários criando e executando uma consulta exclusão. Normalmente, o processo de criação e execução de uma consulta exclusão segue estes passos gerais:

  • Planejar a exclusão. Como parte do processo, determine se os dados que você deseja excluir estão relacionados aos dados de outra tabela. Em caso afirmativo, você terá que determinar se os dados residem no lado "um" ou no lado "muitos" de uma relação um-para-muitos. Se os dados residirem no lado "um", você terá que habilitar uma propriedade da relação antes de poder excluir dados. Se os dados residirem no lado "muitos", a consulta poderá ser criada e executada sem que qualquer ação adicional seja necessária. A ferramenta Relações pode ser usada para investigar as relações existentes em um banco de dados. Para iniciar a ferramenta Relações, na guia Ferramentas de Banco de Dados, no grupo Mostrar/Ocultar, clique em Relações.

Para obter mais informações sobre o planejamento e a execução de consultas exclusão, consulte o artigo Usar uma consulta exclusão para excluir um ou mais registros de um banco de dados.

  • Crie uma consulta, como uma consulta seleção ou de valores exclusivos, e adicione ou altere quaisquer critérios até que a consulta retorne somente os dados que você deseja excluir.
  • Converta essa consulta em uma consulta exclusão e execute-a para excluir os dados desnecessários.

 Importante   Não é possível desfazer os resultados de uma consulta exclusão. Por esse motivo, é recomendável fazer um backup do banco de dados antes de executá-la. Para obter mais informações sobre como fazer backup de um banco de dados, consulte a seção anterior neste artigo Fazer backup de um banco de dados.

As etapas a seguir explicam como criar uma consulta seleção, convertê-la em uma consulta exclusão e executá-la para excluir registros.

Criar uma consulta seleção

  1. Na guia Criar, no grupo Outros, clique em Design de Consulta.

Imagem da Faixa de Opções do Access

O criador de consultas será aberto e a caixa de diálogo Mostrar Tabela aparecerá.

  1. Selecione a tabela no lado "um" da relação, clique em Adicionar e em Fechar.

A tabela aparecerá como uma janela na seção superior da grade de design da consulta. A janela lista todos os campos da tabela. Esta figura mostra uma tabela típica no criador de consultas.

Uma tabela no criador de consultas

  1. Clique duas vezes no asterisco (*) para adicionar todos os campos da tabela na grade de design.

A adição de todos os campos da tabela permite que a consulta exclusão exclua registros inteiros (linhas) da tabela.

  1. Opcionalmente, adicione uma coluna que permita a inserção de critérios.

Por exemplo, suponha que um cliente encerre suas atividades e você precise excluir todos os pedidos pendentes desse cliente. Para localizar somente esses registros, adicione os campos Código do Cliente e Data do Pedido à grade de design.

  1. Se você seguiu a etapa anterior, insira os critérios na linha Critérios da grade de design.

Use os critérios para retornar somente os registros que você deseja excluir. Caso contrário, a consulta exclusão excluirá todos os registros da tabela. Continuando o exemplo da etapa anterior, insira o número do código do cliente que encerrou suas atividades e a data em que os pedidos desse cliente tornaram-se inválidos.

Para obter mais informações sobre o uso de critérios, consulte o artigo Usar uma consulta exclusão para excluir um ou mais registros de um banco de dados.

  1. Se você seguiu a etapa anterior, desmarque a caixa de seleção Mostrar de cada campo de critérios.
  2. Na guia Design, no grupo Resultados, clique em Executar.

Verifique se a consulta retorna os registros que você deseja excluir.

  1. Mantendo a consulta aberta e vá para as próximas etapas.

Converter a consulta seleção em uma consulta exclusão e executá-la para excluir dados

  1. Clique em Modo Design para alternar da folha de dados para o criador de consultas.
  2. Na guia Design, no grupo Tipo de Consulta, clique em Excluir.

O Access altera a consulta seleção para uma consulta exclusão, oculta a linha Mostrar na seção inferior da grade de design e adiciona a linha Excluir.

Verifique se a linha Excluir na coluna * (todos os campos) exibe De. A palavra Onde deverá aparecer nas colunas de critérios.

  1. Certifique-se de que deseja excluir os dados e clique em ExecutarImagem do botão para executar a consulta e ver os resultados no modo Folha de dados.

O Access solicita que você confirme a exclusão.

Clique em Sim para excluir os dados.

Ocultar a mensagem de confirmação

Siga estas etapas se não quiser ver uma mensagem de confirmação cada vez que uma consulta exclusão ou outra consulta ação for executada.

  • Clique no Botão Microsoft Office Imagem do botão e, em seguida, clique em Opções do Access.

A caixa de diálogo Opções de Acesso é exibida.

  • Clique em Avançado e na seção Edição, em Confirmar, desmarque a caixa de seleção Consultas ação.
  • Clique em OK para fechar a caixa de diálogo Opções do Access.

Início da seção

Impedir que os usuários insiram valores duplicados

Você pode impedir que os usuários insiram dados duplicados impondo várias regras:

  • Definir um campo que deverá conter somente valores exclusivos.    Para implementar esta regra, siga um destes procedimentos:
    • Designe o campo como uma chave primária. Isso só pode ser feito se a tabela ainda não tiver uma chave primária. Para definir um campo como uma chave primária, abra a tabela no modo Design, clique com o botão direito do mouse no nome do campo e clique em Chave PrimáriaImagem do botão. Um campo de chave primária aceita somente valores exclusivos e emite um alerta quando o usuário tenta digitar um valor duplicado.
    • Se a tabela já tiver uma chave primária, defina a propriedade Indexado de um campo como Sim (Duplicação Não Autorizada) no modo Design. Essa propriedade impede que o campo aceite o mesmo valor em mais de um registro. Lembre-se de que em alguns casos, como os campos que contêm informações sobre nomes ou cidades, é necessário aceitar duplicatas.
  • Especificar que uma combinação de valores em dois ou mais campos deverá ser exclusiva para cada registro.    Por exemplo, suponha que você tenha uma tabela de dados sobre contatos. É possível designar uma combinação de campos, como Nome do Contato, Endereço e Cidade, como a chave primária da tabela.

Essa abordagem funciona porque é altamente improvável que dois contatos com o mesmo nome também compartilhem o mesmo endereço e a mesma cidade.

Para criar uma chave primária de vários campos, siga estas etapas:

  1. Abra a tabela no modo Design.
  2. Clique no seletor de linha à esquerda do primeiro campo para selecionar toda a linha.
  3. Mantenha a tecla CTRL pressionada enquanto clica no seletor de linha de outros campos que deseja incluir na chave primária.
  4. Clique com o botão direito do mouse e clique em Chave PrimáriaImagem do botão no menu de atalho.

Esta etapa define a propriedade Indexado de cada campo da chave primária como Sim (Duplicação Autorizada) para que, por exemplo, você possa digitar o mesmo nome, endereço ou cidade, em vários registros, mas não possa digitar uma combinação idêntica de nome, endereço e cidade em mais de um registro. Por exemplo, você pode ter dois contatos chamados Jean Phillipe Bagel, cujo endereço é 2345 Main Street, mas ambos não podem morar em Londres.

Início da seção


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

Localizar e editar, ocultar ou excluir dados duplicados em várias tabelas

As informações das próximas seções explicam algumas das maneiras disponíveis para localizar e editar, ocultar ou excluir registros duplicados existentes em várias tabelas. Normalmente, a sobreposição dos dados de duas ou mais tabelas ocorre quando você tenta integrar um banco de dados a outro.



Quando existem duplicatas em duas tabelas, mostrá-las em posições adjacentes

É comum que duas tabelas de um mesmo banco de dados contenham dados duplicados ou sobrepostos. Por exemplo, suponha que você tenha uma tabela Compradores e uma tabela Clientes:

A tabela Compradores    

Nome Endereço Cidade Telefone Fax
Baldwin Museum of Science 1 Main St. Nova York (505) 555-2122 (505) 555-3123
Blue Yonder Airlines 52 1st St. Boston (104) 555-2123 (104) 555-2124
Coho Winery 3122 75th Ave. S.W. Seattle (206) 555-2124 (206) 555-2125
Contoso Pharmaceuticals 1 Contoso Blvd. Londres (171) 555-2125 (171) 555-2126
Fourth Coffee Calle Smith 2 Cidade do México (7) 555-2126 (7) 555-2127
Consolidated Messenger 3122 75th St. S. Seattle (206) 555-2125 (206) 555-2129
Graphic Design Institute 67 Big St. Tampa (916) 555-2128 (916) 555-2128
Litware, Inc. 3 Microsoft Way Portland (503) 555-2129 (503) 555-2110
Tailspin Toys 4 Microsoft Way Portland (503) 555-2233 (503) 555-2239

A tabela Clientes    

Nome da Empresa Nome do Contato Endereço Cidade CEP Telefone
Baldwin Museum of Science Josh Barnhill 1 Main St. Nova York 12345 (505) 555-2122
Blue Yonder Airlines Waleed Heloo 52 1st St. Boston 23456 (104) 555-2123
Coho Winery Pica Guido 3122 75th Ave. S.W. Seattle 34567 (206) 555-2124
Contoso Pharmaceuticals Jean Philippe Bagel 1 Contoso Blvd. Londres NS1 EW2 (171) 555-2125
Fourth Coffee Julian Price Calle Smith 2 Cidade do México 56789 (7) 555-2126
Adventure Works Christine Hughes 3122 87th Way S.W. Seattle 34567 (206) 555-2125
Humongous Insurance Steve Riley 67 Big St. Tampa 01234 (916) 555-2128
Trey Research Dana Birkby 2 Nosey Pkwy Portland 43210 (503) 555-2129
Fabrikam, Inc. Jesper Aaberg 9 Empire Way Seattle 56789 (206) 555-2233

Observe que, neste caso, as tabelas individuais não contêm valores duplicados, mas os campos de ambas as tabelas contêm alguns dados sobrepostos, como os dados do campo Nome na tabela Compradores e os dados do campo Nome da Empresa na tabela Clientes.

Nem sempre é possível integrar os dados mesclando as duas tabelas. Para alguns clientes, a tabela Compradores pode conter as informações mais recentes, mas a tabela Clientes pode conter os dados mais atualizados sobre outros usuários. Normalmente, a melhor alternativa é analisar o conteúdo de ambas as tabelas e decidir o que será mantido e o que será excluído.

Para agrupar os registros de ambas as tabelas, você deverá criar uma consulta união. Essa consulta colocará os registros duplicados juntos para facilitar a sua análise.

 Observação   Não é possível editar ou excluir os dados retornados por uma consulta união. Para editar ou excluir dados, abra as tabelas de base no modo Folha de Dados.

  1. Na guia Criar, no grupo Outros, clique em Design de Consulta.

Imagem da Faixa de Opções do Access

O Access criará uma nova consulta. A caixa de diálogo Mostrar Tabela será exibida.

  1. Feche a caixa de diálogo Mostrar Tabela sem adicionar qualquer tabela ou consulta à grade de design.
  2. Clique com o botão direito do mouse na guia do documento da consulta e clique em Modo SQL.
  3. Se você usou as tabelas anteriores como exemplo, cole a instrução SQL a seguir na janela. Se estiver usando seus próprios dados, use a instrução a seguir como um modelo. Mantenha as cláusulas SELECT, UNION ALL SELECT e ORDER BY inalteradas, mas substitua os nomes de campos e tabelas com base nos seus dados.

SELECT [Nome da Empresa], [Endereço], [Cidade], [Telefone], FROM [Clientes]
UNION ALL SELECT [Nome], [Endereço], [Cidade], [Telefone], FROM [Compradores]
ORDER BY [Nome da Empresa];

A primeira instrução SELECT recupera registros da tabela Clientes e a segunda instrução SELECT recupera registros da tabela Compradores. A cláusula UNION ALL agrupa os registros de ambas as tabelas. A instrução ORDER BY classifica os registros para que as duplicatas sejam colocadas juntas, facilitando a análise.

 Observação   Cada instrução SELECT deve retornar o mesmo número de campos, na mesma ordem. É necessário que os campos correspondentes tenham tipos de dados compatíveis, com uma exceção: você pode utilizar um campo Número e um campo Texto como campos correspondentes. Lembre-se também de que os nomes de campos podem ser diferentes.

  1. Clique em ExecutarImagem do botão para executar a consulta e exibir os resultados no modo Folha de dados.

Se você usar os registros das tabelas acima, a exibição mostrará 18 registros — todos os 9 registros da tabela Clientes e todos os 9 registros da tabela Compradores.

Salve a consulta e feche o modo de exibição. Você usará essa consulta na próxima seção.

Início da seção

Quando existem duplicatas em duas tabelas, mostrar somente um registro

Ocasionalmente, pode ser necessário exibir somente os registros distintos de duas tabelas semelhantes. Caso um mesmo registro exista em ambas as tabelas, você pode incluir o registro da primeira tabela e ignorar o registro correspondente na segunda tabela.

O Access trata os registros de diferentes tabelas como duplicatas somente se houver uma correspondência de valores em todos os campos selecionados. Por exemplo, se você incluir os campos Nome da Empresa, Cidade, Endereço, Telefone e Fax na consulta, os valores de todos os cinco campos deverão ser correspondentes para que o Access trate um registro como uma duplicata.

As etapas desta seção explicam como alterar a consulta da seção anterior para mostrar todos os registros da tabela Clientes e somente os registros exclusivos da tabela Compradores.

 Observação   Não é possível editar os dados retornados por uma consulta união. Para editar ou excluir dados, abra as tabelas de base no modo Folha de Dados.

Modificar a consulta

  1. Abra a consulta que foi criada na seção anterior.
  2. Na guia do documento da consulta, clique em Modo SQL para ver a instrução SQL.
  3. Exclua os campos [Telefone] em ambas as instruções SELECT.
  4. Exclua a palavra ALL após a palavra UNION. Isso fará com que a consulta ignore os registros duplicados da tabela Compradores. A instrução SQL ficará assim:

SELECT [Nome da Empresa], [Endereço], [Cidade], FROM [Clientes]
UNION SELECT [Nome], [Endereço], [Cidade], FROM [Compradores]
ORDER BY [Nome da Empresa];

  1. Clique em ExecutarImagem do botão para executar a consulta e exibir os resultados no modo Folha de dados.

Se você usar os dados de exemplo da seção anterior, a consulta retornará 14 registros em vez de 18.

Início da seção

Mostrar somente os registros duplicados localizados em ambas as tabelas

Você usa uma junção interna para consultar somente os valores correspondentes de duas tabelas. Se você não tem experiência com o Access, uma junção interna é uma operação que vincula as linhas de duas ou mais tabelas somente quando há uma correspondência entre os valores dos campos associados.

A junção interna é criada construindo uma consulta seleção que inclua ambas as tabelas e, em seguida, criando uma relação entre os campos que contêm os valores duplicados. Por padrão, o Access cria uma junção interna quando a relação é criada.

 Observação   Não é possível editar os campos ou linhas retornados por uma consulta seleção que possui uma junção interna. Para editar os dados, abra as tabelas de base e altere os valores em cada tabela.

Criar uma consulta que tem uma junção interna

  1. Na guia Criar, no grupo Outros, clique em Design de Consulta.

Imagem da Faixa de Opções do Access

  1. Na caixa de diálogo Mostrar Tabela, clique duas vezes na tabela Clientes e na tabela Compradores e, em seguida, clique em Fechar para fechar a caixa de diálogo.
  2. Identifique os campos que contêm valores correspondentes nos registros duplicados. Se estiver usando as tabelas de exemplo, o campo Nome da Empresa na tabela Clientes corresponde ao campo Nome na tabela Compradores.
  3. Arraste o campo Nome da Empresa da primeira tabela para o campo Nome da segunda tabela. O Access conectará os campos com uma linha.

A linha entre as tabelas Clientes e Compradores indica que elas estão relacionadas com base nos nomes de clientes

Por padrão, a consulta cria uma junção interna entre duas tabelas. Uma junção interna seleciona apenas os registros em que o campo Nome da Empresa corresponde ao campo Nome.

  1. Clique duas vezes no campo Nome da Empresa para adicioná-lo à grade de design da consulta. Esse campo ajudará a identificar os registros no modo Folha de Dados.
  2. Clique duas vezes nos outros campos das tabelas Clientes e Compradores que você deseja adicionar à grade de design da consulta. Neste caso, adicione o campo Telefone da tabela Clientes e o campo Telefone da tabela Compradores.
  3. Clique em ExecutarImagem do botão para executar a consulta e exibir os resultados no modo Folha de dados. A consulta retornará cinco registros, um para cada cliente que possui um registro em ambas as tabelas.
Nome da Empresa Telefone (Clientes) Telefone (Compradores)
Baldwin Museum of Science (505) 555-2122 (505) 555-3123
Blue Yonder Airlines (104) 555-2123 (104) 555-2124
Coho Winery (206) 555-2124 (206) 555-2124
Contoso Pharmaceuticals (171) 555-2125 (171) 555-2125
Fourth Coffee (7) 555-2126 (7) 555-2126

Início da seção

Exibir somente os registros de uma tabela que não têm um registro correspondente em outra tabela

Continuando com o cenário em que as tabelas Clientes e Compradores contêm dados duplicados, agora você verá como exibir somente os registros da tabela Clientes que não têm um registro duplicado na tabela Compradores. Isso pode ajudar a tomar decisões sobre determinados clientes, com base apenas no conteúdo da tabela Clientes, antes de seguir em frente com a consolidação das duas tabelas.

Você pode exibir somente os registros da tabela Clientes que não têm uma correspondência na tabela Compradores criando uma consulta localizar não coincidente. Usando os dados de exemplo, esse tipo de consulta recupera todos os registros da tabela Clientes que não têm uma correspondência na tabela Compradores.

 Observação   Você pode editar os valores dos campos ou excluir registros quando esse tipo de consulta é exibido no modo Folha de Dados.

Criar uma consulta localizar não coincidente

  1. Na guia Criar, no grupo Outros, clique em Assistente de Consulta.

Imagem da Faixa de Opções do Access

  1. Na caixa de diálogo Nova Consulta, clique em Assistente de Consulta Localizar Não Coincidente e clique em OK.
  2. Clique na tabela Clientes — ela contém os registros em que você está interessado. Clique em Avançar.
  3. Clique na tabela Compradores — é a tabela com a qual você deseja comparar a tabela Clientes. Clique em Avançar.
  4. Clique no campo Nome da Empresa da tabela Clientes, clique no campo Nome da tabela Compradores e clique no botão <=>. Isso associará as duas tabelas com base nos nomes dos clientes. Clique em Avançar.
  5. Selecione os campos que deseja ver no modo de exibição. Nesse caso, adicione os campos Nome da Empresa, Endereço, Cidade e Telefone. Clique em Avançar.
  6. Digite um nome para a consulta e clique em Concluir para exibir os registros no modo Folha de Dados. Se estiver usando as tabelas de exemplo, a consulta retornará quatro registros — no caso, os registros da tabela Clientes que não têm um registro sobreposto na tabela Compradores.
Nome da Empresa Endereço Cidade Telefone
Adventure Works 3122 87th Way S.W. Seattle (206) 555-2125
Humongous Insurance 67 Big St. Tampa (916) 555-2128
Trey Research 2 Nosey Pkwy Portland (503) 555-2129
Fabrikam, Inc. 9 Empire Way Seattle (206) 555-2233

Início da seção

Excluir os registros duplicados de uma tabela e mesclar os registros restantes em outra tabela

Depois de analisar os dados duplicados em tabelas semelhantes, você pode excluir os registros duplicados e mesclar os dados restantes em uma única tabela. O processo segue as seguintes etapas gerais:

  • Opcionalmente, na tabela que você deseja excluir, atualize os dados que serão mesclados. A explicação sobre como atualizar dados está além dos objetivos deste tópico.

Para obter informações sobre como atualizar dados, consulte o artigo Atualizar os dados em um banco de dados

  • Opcionalmente, avalie se existem relações entre a tabela que será excluída e outras tabelas do banco de dados. Quando existe uma relação, normalmente essa relação é excluída e uma nova relação é estabelecida com a outra tabela (a tabela que conterá os dados mesclados). Entretanto, é necessário verificar se os valores das chaves primárias na nova tabela correspondem aos valores das chaves primárias nas outras tabelas.
  • Crie uma consulta exclusão usando a propriedade Valores Exclusivos para localizar e excluir todos os registros correspondentes. Como parte do processo, você deve verificar se eventuais relações existentes entre as tabelas do seu banco de dados não serão interrompidas. Por exemplo, suponha que você deseje mover todos os registros exclusivos da tabela Compradores para a tabela Clientes e depois excluir a tabela Compradores. Se a tabela Compradores estiver relacionada a qualquer outra tabela do banco de dados, é necessário garantir que a tabela Clientes possa assumir essa relação. Uma explicação completa sobre relações está além dos objetivos deste tópico.

Para obter mais informações, consulte o artigo Criar, editar ou excluir uma relação.

  • Crie uma consulta acréscimo para adicionar os registros restantes da tabela que será excluída para a tabela que será mantida. Como parte do processo, talvez seja necessário adicionar à tabela que será mantida o campo e os valores das chaves primárias dos dados acrescentados.
  • Excluir a tabela desnecessária.

As etapas desta seção explicam como criar e usar uma consulta exclusão e uma consulta acréscimo e como excluir uma tabela. Serão usadas nessas etapas as tabelas Clientes e Compradores.

A tabela Clientes    

Nome da Empresa Nome do Contato Endereço Cidade CEP Telefone
Baldwin Museum of Science Josh Barnhill 1 Main St. Nova York 12345 (505) 555-2122
Blue Yonder Airlines Waleed Heloo 52 1st St. Boston 23456 (104) 555-2123
Coho Winery Pica Guido 3122 75th Ave. S.W. Seattle 34567 (206) 555-2124
Contoso Pharmaceuticals Jean Philippe Bagel 1 Contoso Blvd. Londres NS1 EW2 (171) 555-2125
Fourth Coffee Julian Price Calle Smith 2 Cidade do México 56789 (7) 555-2126
Adventure Works Christine Hughes 3122 87th Way S.W. Seattle 34567 (206) 555-2125
Humongous Insurance Steve Riley 67 Big St. Tampa 01234 (916) 555-2128
Trey Research Dana Birkby 2 Nosey Pkwy Portland 43210 (503) 555-2129
Fabrikam, Inc. Jesper Aaberg 9 Empire Way Seattle 56789 (206) 555-2233

A tabela Compradores    

Nome Endereço Cidade Telefone Fax
Baldwin Museum of Science 1 Main St. Nova York (505) 555-2122 (505) 555-3123
Blue Yonder Airlines 52 1st St. Boston (104) 555-2123 (104) 555-2124
Coho Winery 3122 75th Ave. S.W. Seattle (206) 555-2124 (206) 555-2125
Contoso Pharmaceuticals 1 Contoso Blvd. Londres (171) 555-2125 (171) 555-2126
Fourth Coffee Calle Smith 2 Cidade do México (7) 555-2126 (7) 555-2127
Consolidated Messenger 3122 75th St. S. Seattle (206) 555-0170 (206) 555-0171
Graphic Design Institute 67 Big St. Tampa (916) 555-2128 (916) 555-2128
Litware, Inc. 3 Microsoft Way Portland (503) 555-0192 (503) 555-0193
Tailspin Toys 4 Microsoft Way Portland (503) 555-2233 (503) 555-2239

Se quiser usar essas tabelas em um banco de dados, consulte a seção anterior deste artigo Preparar dados de exemplo. Para este exercício, suponha que a tabela Clientes contenha as informações mais recentes — e que, portanto, você deseja excluir os registros correspondentes da tabela Compradores e mesclar os registros restantes à tabela Clientes.

Excluir dados desnecessários

  1. Na guia Criar, no grupo Outros, clique em Design de Consulta.

Access Ribbon Image

  1. Na caixa de diálogo Mostrar Tabela, clique duas vezes na tabela Clientes e na tabela Compradores e feche a caixa de diálogo.
  2. Associe as duas tabelas arrastando o campo NomeDaEmpresa da tabela Clientes para o campo Nome da tabela Compradores.
  3. Clique com o botão direito do mouse na área vazia na metade superior da janela e clique em Propriedades. Defina o valor da propriedade Registros Exclusivos como Sim.

Ao associar as duas tabelas e definir a propriedade Registros Exclusivos da consulta como Sim, você está evitando que a mensagem Não foi possível excluir dados das tabelas especificadas apareça quando a consulta for executada.

  1. Na guia Design, no grupo Tipo de Consulta, clique em Excluir.
  1. Arraste o asterisco (*) da tabela Compradores para a linha Campo da primeira coluna na grade de design da consulta.

O asterisco (*) na Lista de Campos representa todos os campos da tabela

Compradores aparecerá na linha Tabela e De aparecerá na linha Excluir. Isso significa que a consulta excluirá linhas da tabela Compradores.

  1. Agora é necessário especificar quais registros serão excluídos pela consulta. Se você estiver usando as tabelas de exemplo, serão excluídos os registros em que os campos Nome, Endereço e Cidade da tabela Compradores são idênticos aos campos correspondentes na tabela Clientes.

Arraste o campo Nome da tabela Compradores para a primeira célula vazia da linha Campo na grade de design da consulta. Faça o mesmo com os campos Endereço e Cidade da tabela Compradores.

  1. Se você estiver usando as tabelas de exemplo, na linha Critérios do campo Nome, digite [Clientes].[Nome da Empresa]. Na linha Critérios do campo Endereço, digite [Clientes].[Endereço]. Na linhaCritérios do campo Cidade, digite [Clientes].[Cidade]. A grade de design da consulta deverá ter a seguinte aparência:

Os campos e critérios que determinam os registros duplicados

Ao ser executada, a consulta excluirá todos os registros que atendem a esses critérios — ou seja, aqueles que têm valores correspondentes nos três campos de ambas as tabelas.

  1. Clique em ExibirImagem do botão para visualizar quais registros serão excluídos quando a consulta for executada. Você verá cinco registros duplicados da tabela Compradores.
  2. Clique em ExecutarImagem do botão para executar a consulta. Quando uma mensagem solicitar que você confirme a exclusão, clique em Sim.
  3. Vá para as próximas etapas para criar uma consulta acréscimo.

Acrescentar os dados restantes

  1. Na guia Criar, no grupo Outros, clique em Design de Consulta.

Imagem da Faixa de Opções do Access

  1. Na caixa de diálogo Mostrar Tabela, clique duas vezes na tabela de origem, clique duas vezes na tabela que contém os registros que deseja acrescentar e clique em Fechar. Se estiver usando os dados de exemplo, clique duas vezes na tabela Compradores.
  2. Na guia Design, no grupo Tipo de Consulta, clique em Acrescentar.
  1. Na caixa de diálogo Acrescentar, na lista Nome da Tabela, selecione a tabela de destino (a tabela à qual os dados serão acrescentados). Se estiver usando as tabelas de exemplo, selecione a tabela Clientes e clique em Fechar.
  2. Mova os campos que você deseja acrescentar da tabela de origem na linha Campo na grade de design.

 Importante   Mova somente os campos que têm um campo correspondente na tabela de destino.

Se estiver usando os dados de exemplo, mova os campos Nome, Endereço e Telefone.

  1. Clique na linha Acrescentar a de cada campo e selecione o nome correspondente na tabela de destino. Se estiver usando os dados de exemplo, selecione, respectivamente, os campos Nome do Cliente, Endereço e Telefone.
  2. Como todos os registros da tabela Compradores serão adicionados à tabela Clientes, não é necessário especificar qualquer critério. Clique em ExibirImagem do botão para visualizar quais registros serão adicionados à tabela Clientes quando a consulta for executada.
  3. Salve e feche o modo de exibição.
  4. Localize e clique duas vezes na consulta acréscimo. Clique em Sim para confirmar a operação de acréscimo.

MostrarNão desejo ver as mensagens de confirmação cada vez que executo essa consulta

  • Clique no Botão Microsoft Office Imagem do botão e, em seguida, clique em Opções do Access.
  • Na caixa de diálogo Opções do Access, clique em Edição.
  • Na seção Edição Geral, em Confirmar, desmarque a caixa de seleção Consultas ação.

Excluir a tabela

  1. Verifique se você tem as permissões necessárias para excluir tabelas do banco de dados, se o banco de dados não está em modo somente leitura e se não há outro usuário com a tabela aberta.
  2. No Painel de Navegação, clique na tabela que deseja excluir.
  3. Pressione DELETE e clique em Sim para confirmar que deseja excluir a tabela.

 Observação   A exclusão de tabelas pode afetar parcial ou totalmente a funcionalidade de um banco de dados. Portanto, é essencial planejar a exclusão para garantir que o banco de dados permanecerá funcional, além de fazer sempre um backup do banco de dados antes de excluir dados ou outros componentes.

Para obter mais informações sobre a exclusão de dados, consulte o artigo Excluir um ou mais registros de um banco de dados.

Início da seção

Ver somente os registros distintos ao exibir dados de tabelas relacionadas

Uma consulta que agrupe dados de duas tabelas relacionadas pode exibir registros em que todos os campos pareçam ser idênticos. Entretanto, ao examinar as tabelas, talvez você constate que na verdade elas não contêm registros duplicados. Esse problema ocorre quando a consulta não inclui certos campos, como as chaves primárias, que poderiam identificar cada registro de maneira exclusiva. Nessas situações, embora não queira excluir os registros, você pode ocultar aqueles que pareçam ser duplicatas.

Por exemplo, digamos que você use uma consulta que coleta dados de clientes em duas tabelas para verificar se seus funcionários estão atendendo aos pedidos rapidamente. Como seus clientes podem comprar vários produtos, cada produto torna-se um registro separado (uma linha) nas tabelas de base. Como cada pedido é feito em um único dia e depois atendido em um único dia, os registros de um determinado pedido podem conter uma grande quantidade de datas duplicadas, como neste exemplo:

Campos com valores exclusivos removidos da consulta Pedidos Atendidos

Sabendo que os pedidos são recebidos em um determinado dia e são atendidos em um determinado dia, você só precisa ver um registro (uma linha) por pedido. Para exibir registros exclusivos das tabelas que contêm os dados sobre pedidos, você pode definir a propriedade Registros Exclusivos da consulta como Sim. Quando essa propriedade for definida como Sim, a consulta pesquisará todas as linhas das tabelas e, sempre que encontrar linhas (e não apenas campos) correspondentes, excluirá todas as linhas duplicadas, exceto uma, do conjunto de resultados.

Definir a propriedade Valores Exclusivos como Sim

  1. Com a consulta aberta no modo Design, pressione F4 para exibir a folha de propriedades.
  2. Na folha de propriedades, defina a propriedade Registros Exclusivos como Sim e feche a folha de propriedades.

Exibindo a folha de propriedades da consulta

Antes de prosseguir, lembre-se de que quando a propriedade Registros Exclusivos for definida como Sim, a consulta comparará linhas inteiras e só excluirá dados quando houver uma correspondência entre as linhas de todas as tabelas envolvidas. Além disso, só é possível configurar a propriedade Registros Exclusivos quando a consulta incluir duas ou mais tabelas.

Ao alternar para o modo Folha de Dados, você só verá um registro de cada pedido.

Um registro por pedido da tabela Pedidos

Lembre-se também de que, mesmo depois de definir a propriedade Registros Exclusivos como Sim e executar a consulta, você ainda poderá ver registros que parecem ser duplicados. Continuando com o exemplo anterior, talvez você encontre registros em que há correspondência tanto na data do pedido como na data do envio, como estes:

A exibição ainda mostra registros duplicados

Isso acontece quando dois pedidos diferentes são recebidos no mesmo dia e enviados no mesmo dia. Definir a propriedade Registros Exclusivos como Sim não oculta esses registros dos resultados da consulta, pois os registros não estão efetivamente duplicados nas tabelas de base.

Se quiser ver somente uma instância desses registros (ou seja, um registro de pedido por dia), você terá que definir a propriedade Valores Exclusivos da consulta como Sim. Quando a propriedade Valores Exclusivos for definida como Sim, a consulta não tentará localizar duplicatas nas tabelas de base. Em vez disso, ela examinará os valores dos campos incluídos e, quando houver uma correspondência entre todos os campos de dois registros, ocultará um desses registros no modo de exibição.

A propriedade Valores Exclusivos é definida exatamente da mesma maneira que a propriedade Registros Exclusivos — exibindo a folha de propriedades da consulta e alterando a definição para Sim. Na folha de propriedades, a caixa de propriedade Valores Exclusivos está acima da caixa de propriedade Registros Exclusivos.

Propriedade Valores Exclusivos definida como Sim

Continuando com o exemplo anterior, agora você só vê as datas em que um ou mais pedidos foram recebidos ou enviados. Você não vê mais um registro por pedido.

Datas em que os pedidos foram recebidos e enviados

 Observação   Como a definição da propriedade Registros Exclusivos como Sim opera sobre as linhas das tabelas que fornecem dados para a consulta e a definição da propriedade Valores Exclusivos como Sim opera sobre os campos da consulta, não é possível usar ambas as propriedades ao mesmo tempo. Quando você definir uma delas como Sim, o Access automaticamente definirá a outra como Não. Entretanto, ambas podem ser definidas como Não para retornar todos os registros.

A tabela a seguir fornece um resumo para ajudar você a escolher as definições das propriedades Registros Exclusivos e Valores Exclusivos em uma consulta.

Se a sua consulta for baseada em... E você quiser ver... Defina... Resultado...
Duas ou mais tabelas, mas todos os campos da consulta vêm de uma única tabela Registros distintos da tabela (todos os campos da tabela devem corresponder para que dois registros sejam classificados como duplicatas) Registros Exclusivos como Sim. (O Access definirá automaticamente Valores Exclusivos como Não). Se a tabela contiver registros duplicados, a consulta os ignorará. Mesmo assim, os resultados da consulta podem conter registros em que todos os campos são correspondentes caso a consulta não inclua um campo que identifique esses registros de maneira exclusiva.
Uma ou mais tabelas Registros distintos no modo Folha de Dados da consulta (todos os campos no modo Folha de Dados devem corresponder para que dois registros sejam classificados como duplicatas) Valores Exclusivos como Sim. (O Access definirá automaticamente Registros Exclusivos como Não). A consulta excluirá os registros duplicados (com correspondência em todos os campos) no modo Folha de Dados. Entretanto, lembre-se de que talvez você não veja todos os registros distintos da tabela de base.
Uma ou mais tabelas Todos os registros Valores Exclusivos como Não e Registros Exclusivos como Não. Você verá todos os registros, exclusivos ou duplicados, de ambas as tabelas.

Início da seção

Ver um registro específico ou resumir dados duplicados em tabelas relacionadas

Durante a exibição de dados duplicados em tabelas relacionadas, talvez você queira ver um registro específico do conjunto de duplicatas ou queira resumir os dados duplicados usando Contar, Soma ou outra função agregada.

Assim como no cenário descrito na seção anterior, talvez não haja realmente dados duplicados nas tabelas, mas quando são exibidos os dados de duas tabelas que compartilham uma relação um-para-muitos, como a que existe entre as tabelas Pedidos e Detalhes dos Pedidos, podem surgir muitos registros em que há uma correspondência entre vários campos. Por exemplo, um funcionário pode ter recebido vários pedidos do mesmo cliente, ou pode ter vendido o mesmo produto como parte de diferentes pedidos no mesmo dia, e assim por diante. Para responder a perguntas como as que são listadas abaixo, você terá que resumir os dados em vez de excluir dados duplicados.

  • Determinar a quantidade total de cada produto vendida por cada funcionário.
  • Contar o número total de pedidos de cada cliente que cada funcionário atendeu.
  • Localizar o maior pedido do dia para cada funcionário.

Para resumir dados, use uma consulta de totais semelhante às que foram discutidas na seção anterior deste artigo Mostrar registros distintos especificando qual duplicata aparecerá nos resultados. Essa seção explicou como usar uma consulta de totais com uma única tabela. Para criar uma consulta de totais contendo múltiplas tabelas, siga este procedimento:

  • Lembre-se de adicionar a segunda tabela quando a primeira tabela for adicionada na caixa de diálogo Mostra Tabela.
  • Ao adicionar os campos que determinam a duplicação, arraste os campos desejados de ambas as tabelas e, nas colunas de todos os campos, defina o valor da linha Total como Agrupar Por.
  • O campo que identifica o registro que você deseja ver ou que contém os valores que você quer resumir pode ser proveniente de qualquer das duas tabelas.

Início da seção


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

 
 

Consulte também