Olá, pessoal!

O uso de um DISTINCT em um script de carga pode levar a alguns resultados "estranhos" se você não estiver familiarizado com a maneira que o Qlik processa as informações.

Suponha o script abaixo, quantas linhas ao final devem existir na tabela A?

 

TableA:
load  * Inline [
F1, F2
1,1
1,2
1,1
1,2
];

load distinct * Inline [
F1, F2
1,1
1,2
1,1
1,2
];

 

Opções:

  1. 6
  2. 8
  3. 2

Você se surpreenderia se a resposta correta for 2? Duvida? Teste ai no seu Qlikview ou Sense.

Mas como assim? E aqueles 4 registros da primeira tabela, para onde foram?

 

Um qualificador DISTINCT em um load não se aplica apenas a aquela operação, mas a tabela como um todo. Se você fizer várias operações com uma tabela e em apenas uma dela houver um DISTINCT toda a tabela final será composta apenas com os as linhas distintas.

Uma vez 'tocada' por um DISTINCT a tabela sempre será todos os seus valores repetidos eliminados não importa se você fizer um JOIN, CONCATENATE ou outro comando.

Ela fica 'contaminada', hehe

 

That´s all folks

 

Link para post no meu blog