Concatenar tablas

Concatenación automática

Si los nombres de los campos y el número de campos de dos o varias tablas cargadas son exactamente iguales, QlikView concatenará automáticamente el contenido de las diferentes sentencias en una tabla.

Ejemplo:  

LOAD a, b, c from table1.csv;

LOAD a, c, b from table2.csv;

La tabla interna resultante tiene los campos a, b y c. El número de registros es la suma de los números de registros de la tabla 1 y la tabla 2.

Nota: El número y los nombres de los campos deben ser exactamente iguales. El orden de las dos sentencias es arbritario.

Concatenación forzada

También se puede hacer que QlikView obligue a concatenar dos o más tablas aunque dichas tablas no tengan exactamente el mismo conjunto de campos. Esto se hace mediante la inclusión del prefijo concatenate en el script, que concatena una tabla con otra tabla designada o con la última tabla lógica previamente creada.

Ejemplo:  

LOAD a, b, c from table1.csv;

concatenate LOAD a, c from table2,csv;

 

La tabla interna resultante tiene los campos a, b y c. El número de registros de la tabla resultante es la suma de los números de registros de la tabla 1 y la tabla 2. El valor del campo b en los registros que vienen de la tabla 2 es NULL.

Nota: El número y los nombres de los campos deben ser exactamente iguales. A menos que se haya especificado el nombre de una tabla previamente cargada en la sentencia Join, el prefijo concatenate utilizará la última tabla previamente creada. Por lo tanto, el orden de las dos sentencias no es arbitrario.

Cómo evitar la concatenación

Si los nombres de los campos y el número de campos de dos o varias tablas cargadas son exactamente iguales, QlikView concatenará automáticamente el contenido de las diferentes sentencias en una tabla. Esto se puede evitar con la sentencia noconcatenate. La tabla cargada con la sentencia LOAD o SELECT asociada no se concatenará entonces con la tabla existente.

Ejemplo:  

LOAD a, b, c from table1.csv;

noconcatenate LOAD a, b, c from table2.csv;