El comando keep en QlikView se usa para combinar datos de dos conjuntos de datos mientras se mantienen ambos conjuntos de datos disponibles en la memoria. Esto es muy similar a los sindicatos que analizamos en el capÃtulo anterior, con dos diferencias importantes. La primera diferencia está en el caso del ahorro; Ambos conjuntos de datos están disponibles en la memoria de QlikView, mientras que cuando se combinan, las declaraciones de carga crean solo un conjunto de datos del que debe seleccionar columnas. La segunda diferencia es que no existe el concepto de retención externa, ya que tenemos una combinación externa disponible en el caso de las combinaciones.
Echemos un vistazo a los siguientes dos archivos de datos CSV que se utilizan como entrada para más ilustraciones.
Product List: ProductID,ProductCategory 1,Outdoor Recreation 2,Clothing 3,Costumes & Accessories 4,Athletics 5,Personal Care 6,Hobbies & Creative Arts Product Sales: ProductID,ProductCategory,SaleAmount 4,Athletics,1212 5,Personal Care,5211 6,Hobbies & Creative Arts,1021 7,Display Board,2177 8,Game,1145 9,soap,1012 10,Beverages & Tobacco,2514
Cargamos la entrada anterior con un editor de secuencias de comandos que se invoca haciendo clic en Ctrl + E… Elige una opcion Archivos de tabla y busque el archivo de entrada. Luego, editamos los comandos en el script para crear un soporte interno entre las tablas.
Internal Keep selecciona solo aquellas filas que están presentes en ambas tablas. En este caso, las lÃneas disponibles en tanto la lista de productos como las ventas de productos se recuperan la tabla. Creamos Table Boxes usando el menú Diseño -> Nuevos objetos de hoja -> Cuadro de tabla…
Al principio solo elegimos venta de productos una tabla que nos da los campos ProductID, ProductCategory y SaleAmount para mostrar.
A continuación, seleccione Lista de compras un conjunto de datos que nos da los campos ProductID y ProductCategory.
Finalmente, elegimos Todas las tablas opción y obtenga todos los campos disponibles de todas las tablas.
El siguiente informe muestra todos los campos de la tabla de los pasos anteriores.
Una combinación izquierda es similar a una combinación izquierda, que conserva todas las filas de la tabla de la izquierda, mientras que ambos conjuntos de datos están disponibles en la memoria QlikView.
El siguiente script se usa para crear conjuntos de datos de resultados usando el comando left keep.
productsales: LOAD ProductID, ProductCategory, SaleAmount FROM [C:Qlikviewdataproduct_lists.csv] (txt, codepage is 1252, embedded labels, delimiter is ',', msq); left keep(productsales) productlists: LOAD ProductID, ProductCategory FROM [C:QlikviewdataProductsales.csv] (txt, codepage is 1252, embedded labels, delimiter is ',', msq);
Cuando cambiamos el script como arriba y actualizamos los datos en el informe usando Ctrl + R, obtenemos los siguientes datos en objetos de hoja.
El guardado de la derecha es similar a la combinación de la izquierda, que guarda todas las filas de la tabla de la derecha, mientras que ambos conjuntos de datos están disponibles en la memoria QlikView.
El siguiente script se usa para crear conjuntos de datos de resultados usando el comando left keep.
productsales: LOAD ProductID, ProductCategory, SaleAmount FROM [C:Qlikviewdataproduct_lists.csv] (txt, codepage is 1252, embedded labels, delimiter is ',', msq); right keep(productsales) productlists: LOAD ProductID, ProductCategory FROM [C:QlikviewdataProductsales.csv] (txt, codepage is 1252, embedded labels, delimiter is ',', msq);
Cuando cambiamos el script como arriba y actualizamos los datos en el informe usando Ctrl + R, obtenemos los siguientes datos en objetos de hoja.
🚫