Gerenciar dados com consultas

Fontes de dados não relacionadas com consultas

Seu navegador não oferece suporte a vídeo. Instale o Microsoft Silverlight, o Adobe Flash Player ou o Internet Explorer 9.

Às vezes, você precisa criar uma consulta para obter informações de fontes de dados que não têm uma relação direta (um para um ou um- para muitos).

Usar tabelas intermediárias para conectar fontes de dados nas consultas

Quando você executa uma consulta, o Access usa as relações que você criou entre tabelas e deduz e cria conexões entre outras fontes de dados. Se a relação que você precisa para uma consulta não existir, conecte as tabelas como parte dessa consulta.

Vamos supor que deseja ver quantos pedidos você recebeu de produtos de diferentes fornecedores. Sua tabela Fornecedores não está conectada à sua tabela Detalhes do Pedido de Compra, que contém as IDs de produto e informações de quantidade. No entanto, a tabela Pedidos de Compra está conectada à tabela Detalhes de Pedidos de Compra.

Várias fontes de dados de tabela, com e sem relações predefinidas.

Dica : Se talvez você precise dessa relação fora a consulta que você está criando, é melhor criar uma relação intermediária para uso posterior. Para saber como, veja Criar relações muitos-para-muitos.

Se você não deseja criar a tabela intermediária no banco de dados, use a tabela Pedidos de Compra como a tabela intermediária em sua consulta. Adicione a tabela Fornecedores à esquerda da tabela Pedidos de compra e criar uma conexão.

Usando uma tabela para indiretamente conectar outras duas tabelas

A tabela Pedidos de Compra conecta as duas tabelas diferentes, fornecedores e detalhes do pedido de compra. Conecte as tabelas usando campos como (ID na tabela fornecedor) e ID do fornecedor na tabela Pedidos de compra que atendam aos seguintes critérios:

  • Os dois campos têm tipos de dados compatíveis ou correspondentes. Por exemplo, você não pode conectar um campo de texto a um campo número.

  • Os campos identificam registros correspondentes e exclusivos em cada tabela. Por exemplo, você não gostaria de conectar dois campos Sobrenome porque os sobrenomes nem sempre são exclusivos.

  • Os campos Certifique-se de que o resultado de registros corretos. Por exemplo, se você conectar a ID do Fornecedor à ID da Compra, você poderá obter algumas correspondências se as IDs forem semelhantes. Entretanto, os resultados não farão sentido, pois a ID do Fornecedor não tem relação com a ID da Compra. Uma opção melhor é conectar a ID da tabela Fornecedor à ID do Fornecedor na tabela Pedidos de Compra — os registros retornados farão sentido porque ambos os campos identificam o fornecedor.

Etapas

Se você tiver uma tabela intermediária no banco de dados ou apenas planeja usar uma em sua consulta, siga estas etapas:

  1. Adicione a tabela intermediária à sua consulta entre as duas tabelas não conectadas.

  2. Crie todas as conexões necessárias com a tabela intermediária.

    As conexões podem usar qualquer tipo apropriado de junção, mas devem ser conectadas por meio de campos que atendam aos critérios descritos anteriormente neste módulo.

    Criando todas as conexões necessárias com a tabela intermediária
  3. Conclua a consulta.

    Siga as etapas usuais para a criação de uma consulta: adicione campos de saída, adicione qualquer critério e execute ou salve sua consulta. Para saber como fazer isso, veja Criar consultas básicas.

    Observação : Você não precisa incluir a tabela intermediária em seus resultados. Ela precisa fazer parte das fontes de dados da consulta para que o Access possa conectar os dados.

Quer mais?

Criar consultas básicas

Criar consultas que usam mais de uma fonte de dados

Criar consultas com junções externas

Treinamento do Excel

Treinamento do Outlook

Às vezes, é preciso consultar tabelas ou outras fontes de dados que não estão relacionadas nem compartilham uma junção. Você tem duas opções para fazer isso.

ou seja, uma tabela que compartilha junções com as fontes de dados que você deseja usar.

Ou pode adicionar uma junção.

Vamos começar com a tabela intermediária. No exemplo de banco de dados, os funcionários precisam inserir um status para cada pedido, mas às vezes se esquecem disso.

A pergunta que você quer responder é: "Quais pedidos não têm status e quais funcionários se esqueceram de inseri-los?"

À primeira vista, parece que precisamos usar três tabelas na consulta: Funcionários, Pedidos e Status de Detalhes do Pedido porque eles correspondem aos pontos de dados em nossas perguntas: "Quais pedidos não têm status e quais funcionários se esqueceram de inseri-los?"

Adicione as tabelas à consulta e você verá que essas duas tabelas não estão associadas, mas não tem problema, OK? Podemos adicionar uma junção.

Vamos unir os campos de ID, executar a consulta e... nada.

Agora, fazemos o que deveríamos ter feito em primeiro lugar e observar as relações entre as tabelas.

Quando fazemos isso, podemos ver como a cadeia de relações é: Pedidos de funcionários, Pedidos para DetalhesDoPedido e DetalhesDoPedido para StatusdeDetalhesdoPedido.

Pedidos e StatusdeDetalhesdoPedido não estão relacionados, mas os Detalhes do Pedido estão relacionados a ambos. Isso faz de DetalhesDoPedido nossa tabela intermediária.

O que, por sua vez, leva a uma regra: Se as tabelas intermediárias fizerem parte de sua fonte de dados, você poderá consultar as tabelas não relacionadas e obter um resultado válido.

Não é necessário incluir a tabela intermediária nos resultados mas ela deve fazer parte da fonte de dados da consulta.

Portanto, podemos adicionar DetalhesDoPedido à consulta, ... manter os campos da mesma forma, ... e executar a consulta.

Vamos filtrar valores em branco, ... e aqui está nossa resposta.

Agora, vamos adicionar uma junção a uma consulta. Para fazer isso, lembre-se de mais algumas regras.

As tabelas ou consultas que você deseja unir precisam ter campos com tipos de dados compatíveis ou correspondentes.

Por exemplo, os tipos de dados Número e Moeda são compatíveis, mas Número e Texto, não.

Segundo, a junção criada existe apenas na sua consulta. Você não está criando uma relação de tabela.

E, em terceiro lugar, os resultados devem fazer sentido. Se a junção retorna dados de pedidos e carros da empresa, por exemplo, você provavelmente precisará começar de novo.

Digamos que precisamos saber quais clientes pediram quais produtos.

Adicionamos DetalhesDoPedido, Clientes e Pedidos a uma nova consulta. Agora, vamos adicionar a junção. Arrastamos a ID do cliente da tabela Clientes até o campo correspondente na tabela Pedidos.

Esta é a linha de junção e agora temos outra regra: O Access posiciona o campo que você arrasta na lateral esquerda da nova junção Se você não quiser isso, selecione a linha de junção, pressione a tecla Delete e recomece.

Agora que já cuidamos disso, podemos criar a consulta. Vamos adicionar Nome e Sobrenome de Clientes, em seguida, a ID do Produto, ... ID do Pedido, ... Quantidade, ... e PreçoUnitário de DetalhesDoPedido.

Execute a consulta e aqui estão nosso dados.

Agora você conhece duas técnicas para consultar fontes de dados não relacionados: use uma tabela intermediária ou adicione uma junção para ver as respostas às suas perguntas sobre dados.

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Office Insider

Essas informações foram úteis?

Obrigado por seus comentários!

Agradecemos pelos seus comentários! Parece que pode ser útil conectar você a um de nossos agentes de suporte do Office.

×