Uai, se cê tá lidando com a função NATURALINNERJOIN no Power BI, já dá pra saber que o trem vai envolver juntar duas tabelas de um jeito mais natural que encontro de mineiro com pão de queijo! E essa junção é feita naquelas colunas que as duas tabelas têm em comum. Parece fácil, né? E é mesmo, mas o “inner” aqui já dá a dica: só vai sair resultado onde as colunas baterem certinho nas duas tabelas. Se não tiver coincidência, cê pode esquecer, que não vai aparecer no resultado não, sô!
Como é que usa esse trem?
Vamos começar com o formatinho básico da função:
NATURALINNERJOIN(Tabela1, Tabela2)
Pronto, com isso você vai juntar as duas tabelas onde os nomes das colunas coincidirem. Só cuidado pra não tentar casar pão com bolo, que isso não dá bom!
Agora, bora ver uns exemplos?
- Exemplo básico:
- Tabela1 tem uma coluna chamada
ClienteID
eNome
. - Tabela2 também tem
ClienteID
ePedido
. - Com a função
NATURALINNERJOIN(Tabela1, Tabela2)
, cê vai pegar só osClienteID
que tiverem nas duas tabelas. O resto, ó, corta fora!
- Exemplo na roça:
- Tem a tabela de
Fazendas
comFazendaID
eNome
. - E a tabela de
Animais
comFazendaID
eQuantidade de Vacas
. - O
NATURALINNERJOIN(Fazendas, Animais)
vai te dar só as fazendas que realmente têm vaca! As fazendas que não têm, podem pegar o beco!
- Exemplo de padaria:
- Tabela Pães: tem
ProdutoID
eTipo
. - Tabela Fornos: tem
ProdutoID
eCapacidade
. - Só vai dar match nos pães que couberem no forno. Se o
ProdutoID
for diferente, os outros ficam de fora, uai!
- Exemplo com carro:
- Tabela Carros: tem
CarroID
eModelo
. - Tabela Donos: tem
CarroID
eNome do Dono
. - O
NATURALINNERJOIN
vai te mostrar só os carros que têm dono. Os carros sem dono ficam sem vez.
- Exemplo de feirante:
- Tabela de Feirantes: tem
FeiranteID
eNome
. - Tabela de Produtos: tem
FeiranteID
eProduto
. - Se o feirante não tiver produto na tabela de produtos, ele nem aparece no resultado!
- Exemplo de supermercado:
- Tabela Produtos: tem
ProdutoID
eNome
. - Tabela Estoque: tem
ProdutoID
eQuantidade
. - O
NATURALINNERJOIN(Produtos, Estoque)
vai trazer só os produtos que ainda têm estoque. Acabou o produto, sumiu da lista!
- Exemplo de escola:
- Tabela de Alunos: tem
AlunoID
eNome
. - Tabela de Notas: tem
AlunoID
eNota
. - O
NATURALINNERJOIN
vai te mostrar só os alunos que têm nota. Aqueles que faltaram a prova, nem vão aparecer no boletim!
- Exemplo de pizzaria:
- Tabela de Pizzas: tem
PizzaID
eSabor
. - Tabela de Ingredientes: tem
PizzaID
eIngrediente
. - O resultado vai te mostrar só as pizzas que têm ingredientes cadastrados nas duas tabelas. Pizza sem ingrediente? Tá doido, nem aparece no cardápio!
- Exemplo de futebol:
- Tabela de Times: tem
TimeID
eNome do Time
. - Tabela de Jogadores: tem
TimeID
eNome do Jogador
. - Se o time não tiver jogador nas duas tabelas, não aparece. Time que só tem nome, mas não tem jogador? Que absurdo!
- Exemplo na festa junina:
- Tabela de Barracas: tem
BarracaID
eNome
. - Tabela de Pratos: tem
BarracaID
ePrato
. - Com o
NATURALINNERJOIN(Barracas, Pratos)
, cê vai ver só as barracas que realmente têm pratos. Barraca sem comida, ninguém quer, né?
- Tabela de Barracas: tem
Nota importante!
O NATURALINNERJOIN é como se fosse aquele amigo seletivo: só quer andar com quem tem algo em comum nas duas listas. Se algum dado faltar de um lado ou do outro, ele descarta rapidim.
Se o nome das colunas não bater, ele nem sabe o que fazer. Então, tem que ser igualzinho pra ele funcionar!