Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Boa tarde,
Uma dúvida: o Mapping e Apply Map tem a mesma funcionalidade que o JOIN?
Estou analisando alguns scripts prontos, para estudo, e me deparei com este caso.
Poderiam passar exemplos de aplicação, e de diferença entre eles (caso exista)?
Obrigado
Boa tarde,
O Mapping seria um "de para" e seguido do ApplyMap você atribuiria tal instrução em seus dados.
exemplo script:
DeParaSetor:
Mapping
LOAD * Inline [
de, para
01, compras
02, faturameto
];
Funcionarios:
LOAD
ApplyMap('DeParaSetor',CodSetor) as NomeSetor,
* Inline [
idFun, CodSetor, Nome
01, 01, nome01
02, 01, nome02
03, 02, nome03
];
Já o JOIN Seria algo próximo senão igual ao entendimento do banco de dados (oracle, sql server, etc)
Boa tarde,
O Mapping seria um "de para" e seguido do ApplyMap você atribuiria tal instrução em seus dados.
exemplo script:
DeParaSetor:
Mapping
LOAD * Inline [
de, para
01, compras
02, faturameto
];
Funcionarios:
LOAD
ApplyMap('DeParaSetor',CodSetor) as NomeSetor,
* Inline [
idFun, CodSetor, Nome
01, 01, nome01
02, 01, nome02
03, 02, nome03
];
Já o JOIN Seria algo próximo senão igual ao entendimento do banco de dados (oracle, sql server, etc)
Apenas uma observação complementar:
Join irá unir as tabelas "fisicamente", então a carga será mais lenta (a depender do volume, claro) e, caso a relação não seja de 1 para 1, você poderá multiplicar indevidamente os registros. Já o map será como uma tradução, o verdadeiro "de-para".
Todavia, se você precisa de mais de um campo, o join faz mais sentido.
Tem um artigo de um cara fantástico sobre isso aqui:
https://community.qlik.com/t5/Qlik-Design-Blog/Don-t-join-use-Applymap-instead/ba-p/1467592
o cara fantástico somente é o segundo funcionário da Qlik....
Um coisa bacana no applymap() é a opção de caso não tenha um "de-para", poder colocar um "Sem Cadastro" ou algo do gênero. Assim, o campo nunca ficaria nulo como poderia acontecer em um left join que não tenha registros.