Ir al contenido

Paso Combinación de varias tablas

El paso Combinación de varias tablas une muchas tablas en una sola operación. En lugar de encadenar una serie de combinaciones de dos tablas, en las que se pierde la visión de conjunto y se repite la misma asignación de salida, usted dispone todas las tablas en un diseñador visual de grafos de combinación, dibuja las combinaciones entre sus columnas y obtiene una única tabla de resultados.

Está pensado para la forma más habitual de las combinaciones analíticas: una tabla de hechos unida a varias tablas de dimensiones o de búsqueda. Puede combinar hasta 32 tablas a la vez.

Agréguelo como cualquier otro paso y elija Combinación de varias tablas (en el grupo Tablas del menú de pasos, o arrástrelo desde la paleta en el lienzo de flujos de trabajo avanzados). El editor del paso tiene tres pestañas:

  1. Tablas y combinaciones: el diseñador visual donde agrega tablas y dibuja combinaciones.
  2. Columnas de salida: las columnas que contendrá la tabla de resultados.
  3. Filtro posterior a la combinación: un filtro opcional que se aplica al resultado combinado.

Un indicador de estado muestra Listo para guardar o Cambios sin guardar mientras trabaja.

Elija Agregar tabla para colocar una tabla de origen en el lienzo. Cada tabla se muestra como una tarjeta con la lista de sus columnas y recibe un alias: un nombre corto que se usa para hacer referencia a sus columnas en otros lugares (como alias.column). Un alias debe empezar por una letra o un guion bajo y no puede ser una palabra clave de SQL. Agregue todas las que necesite (hasta 32) y elija la Tabla de destino en la que se escribe el resultado.

Si las columnas de una tabla cambian en el catálogo, use Volver a obtener del servidor para reemplazar las columnas de la tarjeta por los valores más recientes.

Tanto las tablas de origen como la Tabla de destino pueden indicarse mediante una referencia en lugar de elegirse de la lista. Marque Dinámico en el selector de tablas y escriba cualquiera de estos valores:

  • el nombre de una tabla: FACT_GL
  • la ruta de un proyecto: /03 Results/FACT_GL

Cualquiera de los dos puede llevar tokens {variable}, que se sustituyen cuando se ejecuta el flujo de trabajo. Así, /03 Results/FACT_GL_{year} escribe en una tabla distinta cada período, según una variable del proyecto o del flujo de trabajo. La tabla de destino se crea si no existe.

Las llaves sin cerrar se detectan al guardar, de modo que un FACT_{year mal escrito se notifica en el paso en lugar de fallar a mitad de una ejecución.

Arrastre desde el punto de una columna de una tabla hasta una columna de otra para crear una combinación (una arista). Seleccione una arista para abrir su editor a la derecha, donde puede establecer lo siguiente:

  • Tipo de unión:

    Tipo Conserva
    INNER solo las coincidencias
    LEFT todas las filas de la tabla izquierda
    FULL todas las filas de ambos lados
    CROSS cada fila izquierda combinada con cada fila derecha (sin condiciones)
  • Condiciones de combinación: una o más comparaciones entre las columnas de las dos tablas. Agregue más con + Agregar condición, combínelas con AND / OR y use el conjunto completo de operadores (=, <>, <, <=, >, >=, BETWEEN, IS NULL, IS NOT NULL, IN, NOT IN, LIKE, NOT LIKE).

  • Etiqueta (opcional): asigne un nombre a la combinación (por ejemplo, customer-to-orders) para que el diagrama sea más fácil de leer.

El diseñador mantiene el grafo de combinación como un árbol: cada tabla se conecta con el resultado mediante exactamente una combinación, por lo que no hay ciclos ni rutas ambiguas, y una tabla no puede combinarse consigo misma. Para quitar una combinación, seleccione la arista y elija Eliminar arista.

Cada tabla de origen tiene un Filtro de entrada que se aplica antes de la combinación; úselo para reducir una tabla a las filas que le interesan (haga referencia a sus columnas como alias.column). Es independiente del Filtro posterior a la combinación, que se ejecuta después de todas las combinaciones.

  • Ordenar diseño organiza automáticamente las tablas y las combinaciones de izquierda a derecha según el orden de combinación.
  • Ajustar a la vista escala y centra el grafo para que quepa por completo; también puede desplazarse y acercar o alejar manualmente.
  • Filtrar columnas… reduce las columnas que se muestran en las tarjetas cuando una tabla tiene muchas.
  • Deshacer / Rehacer retroceden y avanzan por sus ediciones (Ctrl+Z / Ctrl+Y), y Historial abre un panel con todos los cambios desde que abrió el cuadro de diálogo, con la opción Restaurar.
  • Exportar descarga el diagrama de combinación como imagen SVG, útil para la documentación o la revisión.

En la pestaña Columnas de salida, elija las columnas que contendrá la tabla de resultados. Puede elegir de cualquier tabla combinada: use Elegir del lienzo… para seleccionar visualmente entre las columnas de todos los orígenes, o Agregar todas las columnas de origen para incorporarlas todas a la vez. En cada columna puede cambiar el nombre, establecer su tipo de datos y aplicar una agregación. Cuando dos columnas de origen comparten el mismo nombre, PlaidCloud les antepone su alias de origen para que no colisionen.

Cada columna de salida toma su valor de exactamente una de tres fuentes:

  • Una columna de origen: establezca Alias de origen con el alias del lienzo al que pertenece y Origen con la referencia alias.column. Ambos son obligatorios; una columna de origen siempre indica la tabla de la que procede.
  • Una constante: el mismo valor fijo en todas las filas.
  • Una expresión: elija Agregar columna de expresión para añadir una fila y abrir el editor de expresiones. Las expresiones pueden hacer referencia a cualquier alias de origen del lienzo como alias.column, así que esta es la forma de construir un valor que abarque varias tablas combinadas (un CASE entre dos tablas, una concatenación, un importe calculado). Deje Alias de origen y Origen vacíos en una fila de expresión.

Completar más de una de ellas es un error, y no completar ninguna también.

La celda Expresión abre el editor de expresiones estándar de PlaidCloud, con todas las tablas del lienzo en su explorador de columnas, la lista de funciones y el autocompletado.

Las columnas de salida siguen al lienzo: si cambia el nombre de un origen en la pestaña Tablas y combinaciones, sus columnas de salida pasan al nuevo alias, y si quita un origen, sus columnas de salida se descartan, de modo que nunca quedan columnas que apunten a una tabla que ya no forma parte de la combinación.

La pestaña Filtro posterior a la combinación aplica un filtro opcional al resultado combinado antes de escribirlo en la tabla de destino; equivale a una cláusula HAVING de SQL. Haga clic en el cuadro para abrir el editor de expresiones; las columnas de salida aparecen en su explorador de columnas y usted hace referencia a ellas como result.column_name: los alias de origen no están disponibles aquí. Referencias disponibles, debajo del cuadro, enumera todas las referencias que puede usar. Déjelo vacío para omitir el filtrado posterior.

PlaidCloud valida la combinación a medida que usted la construye y de nuevo cuando se ejecuta el paso. Si algo es incorrecto (una configuración no admitida, un ciclo, un alias duplicado, una columna de salida que no define ninguna de las opciones Origen, Constante o Expresión, o define más de una, o una columna que ya no existe), la pestaña muestra una insignia ⚠ con el recuento, el diseñador marca la tabla o la combinación afectada y el guardado se rechaza indicando el motivo. Si guarda con problemas sin resolver, pasa a la pestaña que contiene el primero; Ir al problema hace lo mismo a petición.

Al guardar, PlaidCloud también comprueba cada expresión de columna de salida con las propias entradas de la combinación por alias (alias.column), tal como se ejecuta el paso, y comprueba el Filtro posterior a la combinación. Una expresión incorrecta se notifica en su columna de salida, y un Filtro posterior a la combinación incorrecto, en el filtro. Si la combinación está configurada con Incluir también columnas nombradas en tiempo de ejecución y no resume datos, la comprobación de expresiones se omite al guardar, porque las columnas se agregan en tiempo de ejecución; esas expresiones se comprueban cuando se ejecuta el paso. Los filtros por origen también se comprueban cuando se ejecuta el paso.

La Combinación de varias tablas se ejecuta como cualquier otro paso. Ejecuta todas las combinaciones en una sola operación y escribe las columnas asignadas en la tabla de destino.