Parte 1
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. 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.
2. 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.
3. Na lista de tabelas, selecione a tabela que contém os dados duplicados e clique em Avançar
4. 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.
5. 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.
6. 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
|
7. 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
AndLeft([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.
|
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.
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.
Consulta, itens duplicados |
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, comoPRIMEIRO, MÍN, MÁX, e assim por diante.
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 emOK.
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.
2. 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.
3. Na lista de tabelas, selecione a tabela que contém os registros duplicados e clique em Avançar
4. Na lista de campos disponíveis, selecione somente um ou mais campos que contenham informações duplicadas e clique em Avançar.
5. 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.
6. 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.
7. Clique com o botão direito do mouse na área vazia da metade superior do criador de consultas e clique em Propriedades
8. Na folha de propriedades, localize a propriedade Valores Exclusivos e altere-a para Sim.
Folha de Propriedades |
Comentários