Ir para conteúdo principal Pular para conteúdo complementar

Trabalhando com tabelas cruzadas no script de carregamento de dados

Uma guia cruzada é um tipo comum de tabela que apresenta uma matriz de valores entre duas listas retangulares de dados de cabeçalho. Geralmente não é o formato de dados ideal se você quiser associar os dados a outras tabelas de dados.

Este tópico descreve como você pode não girar uma guia cruzada, ou seja, transpor partes dela em linhas, usando o prefixo crosstable para um comando LOAD no script de carregamento de dados.

Não girando uma guia cruzada com uma coluna de qualificação

Uma guia cruzada frequentemente é precedida de várias colunas de qualificação, que devem ser lidas de modo direto. Neste caso, há uma coluna de qualificação, Year, e uma matriz de dados de vendas por mês.

Tabela de referência cruzada com uma coluna de qualificação
YearJanFebMarAprMayJun
2008456578127822
2009112322224585
2010655622791256
2011452432785515
2012455635786882

Se essa tabela for simplesmente carregada no Qlik Sense, o resultado será um campo para Year e um campo para cada um dos meses. Geralmente, esse resultado não é o desejado. Você provavelmente preferiria ter três campos gerados:

  • A coluna de qualificação, neste casoYear, marcada com a cor verde na tabela acima.
  • O campo de atributo, neste caso representado pelos nomes mêsJan - Jun marcados em amarelo. Este campo pode ser adequadamente denominadoMonth.
  • Os valores da matriz de dados, marcados em azul. Neste caso, eles representam dados de vendas, de modo que este pode ser adequadamente denominadoSales.

Para isso, é preciso incluir o prefixo crosstable na declaração LOAD ou SELECT.

crosstable (Month, Sales) LOAD * from ex1.xlsx;

Isso cria a seguinte tabela no Qlik Sense:

Tabela com prefixo crosstable adicionado à instrução LOAD ou SELECT
YearMonthSales
2008Jan45
2008Fev65
2008Mar78
2008Abr12
2008Maio78
2008Jun22
2009Jan11
2009Fev23
.........

Não girando uma guia cruzada com duas colunas de qualificação

Nesse caso, há duas colunas de qualificação à esquerda, seguidas pelas colunas da matriz.

Tabela de referência cruzada com duas colunas de qualificação
SalesmanYearJanFebMarAprMayJun
A2008456578127822
A2009112322224585
A2010655622791256
A2011452432785515
A2012455635786882
B2008577790249034
B2009233534345797
B2010776834912468
B2011573644906727
B2012576847908094

O número de colunas de qualificação pode ser indicado como um terceiro parâmetro para o prefixo crosstable, da seguinte maneira:

crosstable (Month, Sales, 2) LOAD * from ex2.xlsx;

Isso cria o seguinte resultado no Qlik Sense:

Tabela com colunas de qualificação declaradas como um terceiro parâmetro para o prefixo de crosstable
VendedorYearMonthSales
A2008Jan45
A2008Fev65
A2008Mar78
A2008Abr12
A2008Maio78
A2008Jun22
A2009Jan11
A2009Fev23
............

Saiba mais

 

Esta página ajudou?

Se você encontrar algum problema com esta página ou seu conteúdo – um erro de digitação, uma etapa ausente ou um erro técnico – avise-nos!