Compartilhar via


Antijunção esquerda

Um dos tipos disponíveis de junção na caixa de diálogo Mesclar no Power Query é a antijunção esquerda que traz apenas as linhas da tabela à esquerda que não nenhuma linha correspondente na tabela à direita. Para mais informações, consulte: Visão geral das operações de mesclar

Exemplo de antijunção esquerda.

O diagrama mostra a tabela esquerda com colunas Date, CountryID e Units. A coluna CountryID enfatizada contém valores iguais a 1 nas linhas 1 e 2, 3 na linha 3 e 2 na linha 4. A tabela direita contém as colunas ID e Country. A coluna ID destacada contém os valores 3 na linha 1 (indicando Panamá) e 4 na linha 2 (indicando Espanha). A tabela abaixo das duas primeiras tabelas contém as colunas Date, CountryID, Units e Country. A tabela tem três linhas, com duas linhas contendo os dados para CountryID 1 e uma linha para CountryID 2. Como nenhum dos CountryIDs restantes corresponde a nenhum dos países/regiões na tabela à direita, as linhas na coluna País na tabela mesclada contêm null.

Este artigo usa dados de exemplo para mostrar como fazer uma operação de mesclagem com a junção anti-junção esquerda. As tabelas de origem de exemplo para este exemplo são:

  • Sales: esta tabela inclui os campos Date, CountryID e Units. CountryID é um valor numérico inteiro que representa o identificador exclusivo da tabela Countries.

    Captura de tela da tabela Sales contendo as colunas Date, CountryID e Units, com CountryID definido como 1 nas linhas 1 e 2, 3 na linha 3 e 2 na linha 4.

  • Countries: esta é uma tabela de referência com os campos id e Country. O campo ID representa o identificador exclusivo de cada registro.

    Captura de tela da tabela Countries com ID definida como 3 na linha 1 e 4 na linha 2 e Country definido como Panama na linha 1 e Spain na linha 2.

Neste exemplo, você mescla ambas as tabelas, com a tabela Sales sendo a tabela esquerda e a tabela Countries a direita. A junção é feita entre as colunas a seguir.

Campo da tabela Sales Campo da tabela Countries
CountryID ID

O objetivo é criar uma tabela como a seguinte, em que somente as linhas da tabela esquerda que não correspondem a nenhuma linha da tabela direita serão mantidas.

Tabela final da antijunção esquerda.

Captura de tela da tabela final antijunção esquerda com cabeçalhos de coluna Date, CountryID, Units e Country e três linhas de dados das quais os valores da coluna Country são todos nulos.

Para fazer uma antijunção esquerda:

  1. Selecione a consulta Sales e selecione Mesclar consultas.
  2. Na caixa de diálogo Mesclar, em Tabela à direita para mesclar, selecione Countries.
  3. Na tabela Sales, selecione a coluna CountryID.
  4. Na tabela Countries, selecione a coluna ID.
  5. Na seção Tipo de junção, selecione Anti esquerda.
  6. Selecione OK.

Captura de tela da caixa de diálogo Mesclar mostrando os resultados de seguir o procedimento antijunção esquerda anterior.

Dica

Analise com atenção a mensagem na parte inferior da caixa de diálogo que diz: "A seleção seleciona 3 de 4 linhas da primeira tabela". Essa mensagem é crucial para entender o resultado obtido nessa operação.

Na tabela Sales, você tem duas instâncias de um CountryID de 1 e uma instância de um CountryID de 2, mas nenhum desses valores é encontrado na tabela Countries. Portanto, a correspondência encontrou três de quatro linhas na tabela esquerda (primeira).

Na tabela Countries, você tem o Country Panamá com um ID de 3, de modo que o registro não é trazido para a tabela Sales porque os números coincidem. Além disso, existe o Country Espanha com uma ID de 4, mas não há registros para CountryID 4 na tabela Sales. Portanto, nenhuma das duas linhas da tabela direita (segunda) é trazida para a tabela Sales.

Na coluna Countries recém-criada, expanda o campo Country. Não marque a caixa de seleção Usar nome da coluna original como prefixo.

Captura de tela da caixa de diálogo Expandir com apenas a coluna Country selecionada.

Depois de fazer essa operação, você terá criado uma tabela semelhante à imagem a seguir. O novo campo Country expandido não contém nenhum valor porque a antijunção esquerda não traz nenhum valor da tabela à direita, apenas mantém as linhas da tabela à esquerda.

Mesa final para antijunção à esquerda.

Captura de tela da tabela final com cabeçalhos de coluna Date, CountryID, Units e Country e três linhas de dados. Os valores para a coluna Country são todos nulos.