Experimente!
Por vezes é necessário criar uma consulta para obter informações de origens de dados que não têm uma relação direta (um-para-um ou um-para-muitos).
Utilizar tabelas intermédias para ligar origens de dados em consultas
Quando executa uma consulta, o Access utiliza a relação que criou entre tabelas e deduz e cria ligações entre outras origens de dados. Se a relação de que precisa para uma consulta não existir, ligue as tabelas como parte da consulta.
Suponhamos que pretende ver quantas encomendas de produtos recebeu de diferentes fornecedores. A sua tabela Fornecedores não está ligada à tabela Detalhes das Notas de Encomenda, que contém os IDs dos produtos e informações relacionadas com quantidade. No entanto, a tabela Notas de Encomenda está ligada à tabela Detalhes das Notas de Encomenda.
Sugestão: Caso precise desta relação fora da consulta que está a criar, é melhor criar uma relação intermédia para uma utilização posterior. Para saber como, consulte o artigo Criar relações muitos-para-muitos.
Se não pretender criar a tabela intermédia na sua base de dados, utilize a tabela Notas de Encomenda como a tabela intermédia na sua consulta. Adicione a tabela Fornecedores à esquerda da tabela Notas de Encomenda e crie uma ligação.
A tabela Notas de Encomenda liga as duas tabelas diferentes, Fornecedores e Detalhes das Notas de Encomenda. Ligue as tabelas através de campos (como ID na tabela Fornecedores e ID do Fornecedor na tabela Detalhes das Notas de Encomenda) que correspondam aos seguintes critérios:
-
Os dois campos têm tipos de dados correspondentes ou compatíveis. Por exemplo, não pode ligar um campo de texto a um campo numérico.
-
Os campos identificam registos exclusivos correspondentes em cada tabela. Por exemplo, não recomendamos que ligue dois campos Apelido porque os apelidos nem sempre são exclusivos.
-
Os campos garantem que os registos corretos resultam. Por exemplo, se ligar o ID do Fornecedor ao ID de Compra, poderá obter algumas correspondências se os IDs forem semelhantes. No entanto, os resultados não farão sentido porque o ID do Fornecedor não tem nada a ver com o ID de Compra. Uma melhor opção é ligar o ID da tabela Fornecedor ao ID do Fornecedor na tabela Notas de Encomenda. Os registos devolvidos farão sentido porque ambos os campos identificam o fornecedor.
Passos
Quer tenha uma tabela intermédia na sua base de dados ou planeie apenas utilizar uma na sua consulta, siga estes passos:
-
Adicione a tabela intermédia à sua consulta entre as duas tabelas não ligadas.
-
Crie as ligações necessárias através da tabela intermédia.
As ligações podem utilizar qualquer tipo de associação adequado, mas têm de estar ligadas através de campos que correspondam aos critérios descritos anteriormente neste módulo.
-
Conclua a consulta.
Siga os passos normais para criar uma consulta: adicione campos de saída, critérios e execute ou guarde a sua consulta. Para saber como fazê-lo, consulte o artigo Criar consultas básicas.
Nota: Não tem de incluir a tabela intermédia nos seus resultados. Estas apenas precisa de fazer parte das origens de dados da consulta para que o Access possa ligar os dados.
Quer mais?
Criar consultas ao associar mais do que uma origem de dados