Combinación de varias tablas
Descripción
Sección titulada «Descripción»El paso Combinación de varias tablas combina muchas tablas (hasta 32) en una sola operación mediante un diseñador visual de grafos de combinación, y sustituye el patrón de encadenar varios pasos de combinación de dos tablas. Usted agrega tablas, dibuja combinaciones entre sus columnas, elige un tipo de combinación y las condiciones de cada una, y asigna las columnas de salida. El editor tiene tres pestañas: Tables & Joins, Columnas de salida y Post-Join Filter.
Para ver un tutorial completo, consulte la guía del paso Combinación de varias tablas.
Diseñador
Sección titulada «Diseñador»- Agregar tabla: coloque una tabla de origen en el lienzo como una tarjeta de columnas. Cada tabla tiene un alias (que se usa como
alias.column) que debe empezar por una letra o un guion bajo y no puede ser una palabra clave de SQL. - Tabla de destino: la tabla en la que se escribe el resultado combinado; se crea si no existe.
- Dinámico: indique un origen o el destino como referencia en lugar de elegirlo: un nombre de tabla, una ruta de proyecto (
/03 Results/FACT_GL) o cualquiera de los dos con tokens{variable}que se resuelven en tiempo de ejecución. Las columnas de un origen dinámico no se pueden leer en tiempo de diseño, por lo que se introducen a mano en el panel lateral. - Dibujar combinaciones: arrastre desde el punto de una columna de una tabla hasta una columna de otra para crear una combinación; una Etiqueta opcional da nombre a la arista.
- Filtro de entrada: un filtro por tabla que se aplica antes de la combinación.
- Volver a obtener del servidor: actualiza las columnas de una tarjeta de tabla desde el catálogo más reciente.
- Ordenar diseño / Ajustar a la vista: organiza automáticamente el grafo o amplía para ajustarlo; el desplazamiento y el zoom también pueden hacerse manualmente.
- Deshacer / Rehacer / Historial: recorra, revise y restaure las ediciones.
- Filtrar columnas…: reduce las columnas que se muestran en una tarjeta de tabla.
- Exportar: descarga el diagrama de combinación como SVG.
Tipos de combinación
Sección titulada «Tipos de combinación»| Tipo | Conserva |
|---|---|
INNER |
Las filas que coinciden entre las tablas combinadas. |
LEFT |
Todas las filas de la tabla izquierda y las filas coincidentes de la derecha. |
FULL |
Todas las filas de ambas tablas. |
CROSS |
Todas las combinaciones de filas (no se permiten condiciones). |
Condiciones
Sección titulada «Condiciones»Cada combinación que no es cruzada tiene una o más condiciones combinadas con AND / OR, con los operadores =, <>, <, <=, >, >=, BETWEEN, IS NULL, IS NOT NULL, IN, NOT IN, LIKE, NOT LIKE.
Una condición puede indicar una columna cuyo nombre tenga espacios o signos de puntuación, como Build Plant o Cust (Id); la columna debe existir en esa entrada. Se rechazan los nombres que contienen comillas dobles, acento grave, barra invertida o un carácter de control.
En BETWEEN, un límite escrito como el alias de una entrada, un punto y una columna (cust.Max Id) se interpreta como una columna de esa entrada. Cualquier otro límite es texto literal, incluido un nombre de alias sin punto. Por lo tanto, un límite de texto que empieza por un alias y un punto, como cust.2024 cuando una entrada tiene el alias cust, se interpreta como una columna y se informa como ausente.
En la pestaña Columnas de salida, asigne las columnas del resultado; cambie el nombre, establezca el tipo de datos y agregue según sea necesario. Las columnas con el mismo nombre reciben automáticamente como prefijo su alias de origen para evitar colisiones.
Cada fila toma su valor de exactamente uno de tres campos; se rechaza establecer más de uno o ninguno:
| Tipo | Campos |
|---|---|
| Columna de origen | Alias de origen (el alias del lienzo al que pertenece) más Origen (alias.column). Ambos son obligatorios. |
| Constante | Constante: el mismo valor fijo en todas las filas. |
| Expresión | Expresión: una expresión de SQLAlchemy que puede hacer referencia a cualquier alias del lienzo como alias.column. |
- Elegir del lienzo…: marque columnas de cualquiera de los orígenes del lienzo.
- Agregar todas las columnas de origen: anexa todas las columnas de todos los orígenes.
- Agregar columna de expresión: anexa una fila de expresión y abre el editor de expresiones.
La pestaña Post-Join Filter aplica un filtro opcional al resultado combinado (el equivalente de HAVING en SQL) antes de escribirlo, y se edita en el mismo editor de expresiones. Hace referencia a las columnas de salida como result.column_name; los alias de origen quedan fuera de alcance ahí.
Columnas nombradas en tiempo de ejecución
Sección titulada «Columnas nombradas en tiempo de ejecución»Seleccione Incluir también columnas nombradas en tiempo de ejecución para pasar sin cambios todas las columnas de origen que el paso no enumera, tal como las tiene la tabla cuando se ejecuta el paso. Úselo cuando un paso anterior cree columnas cuyos nombres dependan de los datos, como un pivote, de modo que no pueda enumerarlas al crear el paso. Déjelo desactivado para escribir solo las columnas que enumere.
Comportamiento
Sección titulada «Comportamiento»- El grafo de combinación es un árbol: cada tabla se une al resultado a través de exactamente una arista (sin ciclos), y una tabla no puede combinarse consigo misma.
- La configuración se valida tanto al guardar el paso como al ejecutarlo; los errores marcan la tabla o la combinación afectada con un indicador ⚠, un guardado fallido cambia a la pestaña que contiene el primer problema y Ir al problema navega hasta allí a petición. Las expresiones de las columnas de salida y el Post-Join Filter se comprueban al guardar; una combinación que incluye columnas nombradas en tiempo de ejecución omite la comprobación de expresiones al guardar y se comprueba cuando se ejecuta el paso.