Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
luizaugustopfg
New Contributor II

Left Join Alterando Valores

Bom dia pessoal, tudo bem?

sou iniciante na ferramenta, tenho muitas dúvidas, porém hoje preciso entender e resolver um pequeno problema, entã vamos lá:

Obs: os dados são fictícios porém o problema que estou enfrentando na empresa sengue o mesmo esquema.

Eu tenho uma tabela simples , básica , onde tenho NrPedido,NrCliente, Qtd e etc...

realizo os seguintes procedimentos:

1-Faço a extração da Tabela.

2- Dou um load na tabela afim de realizar uma fórmula matemática.(Carrego a tabela novamente)

3-Dou o Left Join na tabela 'Res'

4-Fim.

Porém quando dou o left join(Res) o somatório da quantidade é alterado, alguém pode me explicar o motivo?

Segue a tabela:

testando.png

Aqui carrego a tabela e aplico a fórmula matemática:

testando2.png

Me retorna este valor totalmente errado, quando deveria me retornar 171.928,25:

left.png

antes.png

Tags (1)
7 Replies
MVP
MVP

Re: Left Join Alterando Valores

check if the number of rows before and after the left join are the same, maybe you have some duplicated values in

Nr Ped Clie,  Nr Ord Prod

Example

X:

load * inline [

Key, Nr Ped Clie,  Nr Ord Prod

1, 1, A,

2, 1, A

3, 1, B

];

left join (X)

load [Nr Ped Clie],  [Nr Ord Prod]

Resident X;

Result

1.png

MVP
MVP

Re: Left Join Alterando Valores

Luiz,

conforme o maxgro‌ mostrou, você esta dando um left join sem a chave completa e ai vai de fato ficar com os valores errados.

Acho que no left join poderia ser:

left join (Rend)

load

      *,

       Quantidade * "Vl Materiais"  as Testando

Resident Rend;

luizaugustopfg
New Contributor II

Re: Left Join Alterando Valores

Apliquei a solução acima e o problema consiste...

MVP
MVP

Re: Left Join Alterando Valores

another option is

rename table Rand to tmpRand;

Rand:

noconcatenate load

     *,

     Quantidade * "Vl Materiais"  as Testando

resident tmpRand;


drop table tmpRand;

Employee
Employee

Re: Left Join Alterando Valores

E porque você faz um Left Join?

Porque não faz seu cálculo logo na carga, já que suas colunas estão disponíveis?

A meu ver nem join você precisaria fazer

fmbrancher
Contributor

Re: Left Join Alterando Valores

Luiz, conforme o Clever citou acima

não é necessário o Join, apenas adicione a carga original a formula

Quantidade * "Vl Materiais"  as Testando

Pois você já possui essas informações.

MVP
MVP

Re: Left Join Alterando Valores

Clever, eu também tinha percebido isto mas imaginei que tivesse mais left joins e ao final calculava pois originalmente eram de tabelas diferentes.......e ai não comentei......

Mas se de fato são lidas da mesma, não faz sentido um left join para calcular.....