Junção exterior completa
Um dos tipos de junção disponíveis na caixa de diálogo Intercalar no Power Query é uma associação externa completa, que traz todas as linhas das tabelas esquerda e direita. Para obter mais informações: Visão geral das operações de mesclagem
A captura de tela mostra uma tabela à esquerda com as colunas Data, ID do País e Unidades. A coluna CountryID enfatizada contém valores de 1 nas linhas 1 e 2, 3 na linha 3 e 2 na linha 4. Uma tabela à direita contém as colunas ID e País. A coluna ID enfatizada contém valores de 1 na linha 1 (indicando EUA), 2 na linha 2 (indicando Canadá), 3 na linha 3 (indicando Panamá) e 4 (indicando Espanha) na linha 4. Uma tabela abaixo das duas primeiras tabelas contém as colunas Data, ID do País, Unidades e País. Todas as linhas são reorganizadas em ordem numérica de acordo com o valor CountryID. O país associado ao número CountryID é mostrado na coluna País. Como o ID do país para a Espanha não estava contido na tabela à esquerda, uma nova linha é adicionada e os valores de data, ID do país e unidades para essa linha são definidos como nulos.
Este artigo usa dados de exemplo para mostrar como fazer uma operação de mesclagem com a junção externa completa. As tabelas de origem de exemplo para este exemplo são:
Vendas: Esta tabela inclui os campos Data, ID do País e Unidades. CountryID é um valor de número inteiro que representa o identificador exclusivo da tabela Countries .
Países: Esta tabela é uma tabela de referência com os campos ID e País. O campo ID representa o identificador exclusivo de cada registo.
Neste exemplo, você mescla ambas as tabelas, com a tabela Sales como a tabela esquerda e a tabela Countries como a direita. A junção é feita entre as colunas a seguir.
Campo da tabela Vendas | Campo da tabela Países |
---|---|
CountryID | ID |
O objetivo é criar uma tabela como a seguinte, onde o nome do país aparece como uma nova coluna País na tabela Vendas. Devido ao funcionamento da junção externa completa, todas as linhas das tabelas esquerda e direita são trazidas, independentemente de aparecerem apenas em uma das tabelas.
Captura de ecrã da tabela final de junção externa completa com Data, um ID de País e Unidades derivadas da tabela Vendas e uma coluna País derivada da tabela Países. Uma quinta linha foi adicionada para conter dados da Espanha, mas essa linha contém null nas colunas Data, ID do País e Unidades, já que esses valores não existiam para a Espanha na tabela Vendas.
Para executar uma junção externa completa:
- Selecione a consulta Vendas e, em seguida, selecione Mesclar consultas.
- Na caixa de diálogo Mesclar, em Tabela à direita para mesclagem, selecione Países.
- Na tabela Vendas, selecione a coluna CountryID.
- Na tabela Países, selecione a coluna ID.
- Na seção Tipo de associação, selecione Externo completo.
- Selecione OK
Nota
Você pode mesclar em mais de uma coluna selecionando e mantendo pressionada a tecla Ctrl e, em seguida, selecionando as colunas.
Gorjeta
Dê uma olhada mais de perto na mensagem na parte inferior da caixa de diálogo que diz "A seleção corresponde a 4 de 5 linhas de ambas as tabelas". Esta mensagem é crucial para compreender o resultado que obtém desta operação.
Na tabela Países, você tem o País Espanha com ID de 4, mas não há registros para CountryID 4 na tabela Vendas. Portanto, apenas três das quatro linhas da tabela direita encontraram uma correspondência. Todas as linhas da tabela direita que não tinham linhas correspondentes da tabela esquerda são agrupadas e mostradas em uma nova linha na tabela de saída, sem valores para os campos da tabela esquerda.
Na coluna Países recém-criada após a operação de mesclagem, expanda o campo País. Não marque a caixa de seleção Usar nome da coluna original como prefixo.
Depois de executar essa operação, você criará uma tabela parecida com a imagem a seguir.
Captura de ecrã da tabela final de junção exterior completa que contém Data, um ID de País e Unidades derivadas da tabela Vendas e uma coluna País derivada da tabela Países. Uma quinta linha foi adicionada para conter dados da Espanha, mas essa linha contém null nas colunas Data, ID do País e Unidades, já que esses valores não existiam para a Espanha na tabela Vendas.