Skip to main content
Announcements
Accelerate Your Success: Fuel your data and AI journey with the right services, delivered by our experts. Learn More
cancel
Showing results for 
Search instead for 
Did you mean: 
rafael_limeira
Contributor III
Contributor III

Dúvida - Join

Pessoal, boa tarde!

Estou com uma dúvida, onde peço ajuda de vocês para se possível me ajudar. Bom, estou fazendo um Join entre algumas tabela para classificar os dados, visando facilidade de trabalhar no Set Analysis. A primeira deu certo, contudo, gostaria de fazer uma outra condição e é aí que estou travando. Abaixo disponibilizo o script:

// ----- CLASSIFICAÇÃO SITUAÇÃO PDV ----- //

Table1:

LOAD  clienteID,

           statusPDV

FROM

;

Join

Table2:

// SISTEMA 1

LOAD clienteID,

          numeroTerminal


FROM

Where

  (Situação = 'Ativo' or

  Situação = 'Credenciado' );

Join

Table3:

// SISTEMA 2

LOAD clienteID,

          numeroTerminal

         

FROM

Where

  (Situacao = 'Em Instalacao' or

  Situacao = 'Em Operacao' or

  Situacao = 'Inoperante' );

Join

Table4:

//VENDA LOCAL 1

LOAD clienteID,   

          valorBruto,

          tipoProduto

FROM

Where

  (Negócio <> 'Produto Fisico');

Join

Table5:

//VENDA LOCAL 2

LOAD clienteID,   

          valorBruto,

          tipoProduto

FROM

;

Join

Table6:

//VENDA LOCAL 3

LOAD clienteID,

          valorBruto,

          tipoProduto

FROM

;

[VERIFICAÇÃO SITUAÇÃO PDV]: ------------ FUNCIONOU

LOAD clienteID,

          if(statusPDV = 'INATIVO' and isnull(valorBruto) and isnull(numeroTerminal),null(),'Sim') as verificacaoSituacaoPDV

Resident Table1;

[VERIFICAÇÃO TIPO CLIENTE]: ------------ NÃO FUNCIONOU

LOAD clienteID,

          if(statusPDV = 'INATIVO' and isnull(valorBruto) and isnull(numeroTerminal),null(),if(isnull(valorBruto) and isnull(numeroTerminal),'Físico','Eletrônico')) as verificacaoTipoCliente

    

Resident Table1;

DROP Table Table1;

O problema é que ele acaba sinalizando tanto cliente Físico quanto Eletrônico, porém notem que pela regra acima não deveria ocorrer isso no cliente abaixo:

Sem título_1.png

Sem título_2.png

Saberiam me dizer onde estou errando?

11 Replies
rafael_limeira
Contributor III
Contributor III
Author

Alessandro,

Aí é que está, tanto o right quanto o left o resultado é o mesmo. Preciso adicionar apenas uma condição ao valorBruto para que dê certo, aí eu poderia utilizar tanto 1 / 0 ou até mesmo 'Físico' / 'Eletrônico'. Fiz o seguinte código no scrit:

Right Join 

LOAD

  clienteID,

  If(Count(numeroTerminal) = 0 and Sum(valorBruto) = 0,'Físico','Eletrônico') as verificacaoTipoCliente

Resident [Table1]

Group By clienteID; 

DROP Table Table1;

Porém preciso enquadrá-la na seguinte fórmula do Set Analysis:

If(Count(numeroTerminal) = 0 and Sum(tipoProduto={'Eletrônico'}>} valorBruto) = 0,'Físico','Eletrônico')

A condição em vermelho que não estou conseguindo adicionar no Group By. Se adicionar esta condição no script resolvemos o problema, Abraço!

Clever_Anjos
Employee
Employee

Já conseguiu a resposta? Se sim, escolha uma e marque como "Correta" para fechar o tópico e nos ajudar a manter a comunidade organizada