Concatenação
A concatenação é uma operação que pega duas tabelas e combina-as em uma.
As duas tabelas são adicionadas uma a outra colocando uma em cima da outra, com uma coluna para cada nome de coluna diferente. Os dados não são alterados e a tabela resultante contém o mesmo número de registros que as duas tabelas originais juntas. Várias operações concatenadas podem ser executadas em sequência, de modo que a tabela resultante seja concatenada a partir de mais de duas tabelas.
Concatenação automática
Se os nomes de campo e o número de campos de duas ou mais tabelas carregadas forem exatamente os mesmos, o Qlik Sense concatenará automaticamente o conteúdo dos comandos diferentes em uma tabela.
A quantidade e os nomes dos campos devem ser exatamente os mesmos para a concatenação automática ser realizada. A ordem dos dois comandos LOAD é arbitrária, mas a tabela receberá o nome da tabela que for carregada primeiro.
Faça o seguinte:
- Abra o editor de carregamento de dados no aplicativo Scripting Tutorial.
- Clique na guia Dates.
- Clique em Carregar dados.
- Em uma nova linha do script na seção Dates, copie e cole o comando LOAD para Table2. Isso fará com que os dados sejam carregados duas vezes. Nomeie a segunda tabela como Table2a.
- Clique em Carregar dados.
- Abra o Visualizador do modelo de dados.
- Clique em Mostrar visualização.
Com base no script de carregamento que você escreveu até agora, Qlik Sense carrega 628 linhas do arquivo de dados Dates.xlsx em Table2.

Você também pode excluir o script existente e copiar e colar o seguinte:
Table2: LOAD "Date", Month (Date) as "Month", Quarter, "Week", "Year" FROM [lib://DataFiles/Dates.xlsx] (ooxml, embedded labels, table is Dates); Table2a: LOAD "Date", Month (Date) as "Month", Quarter, "Week", "Year" FROM [lib://DataFiles/Dates.xlsx] (ooxml, embedded labels, table is Dates);
Seu script deve ter a seguinte aparência:

O Qlik Sense não carrega Table2 e depois Table2a. Em vez disso, ele reconhece que o Table2a tem os mesmos nomes de campos e o número de campos que Table2. Então, ele adiciona os dados de Table2a a Table2 a exclui a tabela Table2a. O resultado é que Table2 agora tem 1.256 linhas.

Apenas Table2 foi criado. Selecione Table2. A tabela tem 256 linhas.

Concatenação forçada
Mesmo se duas ou mais tabelas não tenham exatamente o mesmo conjunto de campos, ainda será possível forçar o Qlik Sense a concatenar as duas tabelas. O que é feito usando o prefixo Concatenate no script, que concatena uma tabela a outra tabela nomeada ou à tabela criada mais recentemente.
Faça o seguinte:
- Edite o comando LOAD para Table2a, adicionando Concatenate e comentando Week.
- Clique em Carregar dados.
- Abra o Visualizador do modelo de dados.
- Clique em Table2 no visualizador do modelo de dados e, em seguida, em Visualizar.
- Clique em Week em Table2. A visualização mostra que o número de valores não nulos para o campo é 628. No entanto, se você clicar em qualquer um dos outros campos, verá que o número de valores não nulos é 1256. Week foi carregado apenas uma vez, de Table2. O número de valores, ou registros, é a soma do número de registros em Table2 e Table2a.
Seu script agora deve ter a seguinte aparência:
Table2a: Concatenate LOAD "Date", Month (Date) as "Month", Quarter, // "Week", "Year" FROM [lib://DataFiles/Dates.xlsx] (ooxml, embedded labels, table is Dates);
Ao comentar Week, nos certificamos de que as tabelas não sejam idênticas.
Agora, você pode ver que a Table2a não foi criada.
A tabela tem os campos Date, Month, Quarter, Week e Year. O campo Week ainda está sendo exibido, já que foi carregado a partir da Table2.
Evitando a concatenação
Se os nomes de campo e o número de campos de duas ou mais tabelas carregadas forem exatamente os mesmos, o Qlik Sense concatenará automaticamente o conteúdo dos comandos diferentes em uma tabela. O que pode ser evitado com um comando NoConcatenate. Assim, a tabela carregada com o comando LOAD ou SELECT associado não será concatenada com a tabela existente.
Faça o seguinte:
- Para poder separar completamente o conteúdo das duas tabelas, adicione NoConcatenate ao comando LOAD em Table2a e renomeie os campos para que o Qlik Sense não crie uma chave sintética com base nos campos correspondentes. Remova o comentário de Week em Table2 para que as duas tabelas tenham os mesmos campos.
- Clique em Carregar dados.
- Abra o Visualizador do modelo de dados.
- Agora que terminamos de demonstrar a concatenação, não precisamos mais de Table2a. Exclua todas as linhas no comando LOAD para Table2a e, em seguida, clique em Carregar dados.
Seu script agora deve ter a seguinte aparência:
Table2: LOAD "Date", Month (Date) as "Month", Quarter, "Week", "Year" FROM [lib://DataFiles/Dates.xlsx] (ooxml, embedded labels, table is Dates); Table2a: NoConcatenate LOAD "Date" as "Date2", Month (Date) as "Month2", Quarter as "Quarter2", "Week" as "Week2", "Year" as "Year2" FROM [lib://DataFiles/Dates.xlsx] (ooxml, embedded labels, table is Dates);
Agora, você pode ver que as duas tabelas estão completamente separadas.
