Ir al contenido

Agrega filas de una tabla de origen al final de una tabla de destino existente. Las filas existentes en el destino se conservan; solo se insertan filas nuevas. Úselo cuando los datos lleguen de forma incremental (p. ej., extracciones diarias, archivos de carga mensuales) y desee que el destino crezca con el tiempo en lugar de reemplazarlo.

Si necesita eliminar duplicados al anexar, haga seguir este paso de un paso Table Union Distinct (paso), o use Table Upsert (paso) si algunas filas actualizan registros existentes por clave.

Origen y destino

Para establecer las tablas de origen y de destino, seleccione primero la tabla de datos de la que se extraerá en el menú desplegable Tabla de origen. A continuación, seleccione una tabla existente como tabla de destino en el menú desplegable Tabla de destino.

Al configurar el asignador de datos, las columnas de la tabla de origen deben asignarse a una columna de la tabla de destino.

Configuración del asignador de datos

Asignador de datos de la tabla

El asignador de datos se usa para asignar columnas de los datos de origen a la tabla de datos de destino.

Inspección y llenado del asignador

Usar el botón de menú Inspeccionar origen ofrece formas adicionales de asignar columnas del origen al destino:

  • Rellenar ambas tablas de asignación: propaga todos los valores de la tabla de datos de origen a la tabla de datos de destino. Es la opción predeterminada.
  • Rellenar solo la tabla de asignación de origen: asigna únicamente todos los valores de la tabla de datos de origen. Es útil al modificar un flujo de trabajo existente cuando la estructura de columnas de origen ha cambiado.
  • Rellenar solo la tabla de asignación de destino: propaga todos los valores únicamente a la tabla de datos de destino.

Si las opciones de columnas de origen y de destino no bastan, se pueden agregar otras columnas a la tabla de datos de destino de varias maneras:

  • Propagar todo insertará todas las columnas de origen en la tabla de datos de destino, existan ya o no.
  • Propagar seleccionadas insertará solo las columnas de origen seleccionadas.
  • Haga clic con el botón derecho en el lado de destino y seleccione Insertar fila para insertar una fila justo encima de la fila seleccionada.
  • Haga clic con el botón derecho en el lado de destino y seleccione Anexar fila para insertar una fila al final (extremo derecho) de la tabla de datos de destino.

Eliminar columnas

Para eliminar columnas de la tabla de datos de destino, seleccione las columnas deseadas, haga clic con el botón derecho y seleccione Eliminar.

Columnas de origen que ya no figuran en la lista

Una fila de destino puede nombrar una Columna de origen que la tabla de datos de origen ya no incluye, por ejemplo, después de volver a inspeccionar el origen. El paso nunca quita una fila así por usted. En su lugar, el nombre de la columna se muestra en rojo junto a una señal de advertencia ⚠, y al pasar el cursor por encima se indica que la columna no está en las columnas de origen. En un paso con varias tablas, como una unión, cada tabla se comprueba con sus propias columnas de origen.

Una fila con una Constante, una Expresión o un resumen de Recuento (incluidos nulos) nunca se marca, porque el paso no lee su columna de origen. No se marca nada mientras la tabla de datos de origen no incluya columnas, por ejemplo, antes de inspeccionar el origen por primera vez.

Al guardar un paso que todavía tiene filas marcadas, un cuadro de diálogo Se encontraron columnas obsoletas las enumera bajo la pestaña o la tabla en la que se encuentran, y ofrece tres opciones:

  • Quitar todas y guardar: quita las filas marcadas y luego guarda.
  • Guardar de todos modos: guarda el paso tal como está.
  • Cancelar: vuelve al paso sin guardar.

Para conservar una fila y eliminar su advertencia, vuelva a agregar la columna a la tabla de datos de origen o elija una columna que la tabla de datos de origen incluya.

Columnas que faltan en la tabla de origen

Al guardar, se comprueba la propia tabla de datos de origen tal como está en ese momento. Si una columna que el paso incluye en sus columnas de origen no existe en la tabla, por ejemplo porque un paso anterior la renombró o la eliminó, las columnas del paso están desactualizadas, y un paso que lee esa columna falla al ejecutarse. Entonces, al guardar se abre un cuadro de diálogo Faltan columnas de origen que nombra cada tabla y las columnas que le faltan, con dos opciones:

  • Guardar de todos modos: guarda el paso tal como está.
  • Cancelar: vuelve al paso sin guardar.

No se quita nada automáticamente, porque el problema puede estar en la tabla y esta puede volver a cambiar antes de que se ejecute el paso. Cuando también hay filas marcadas como ya no incluidas en la lista, ambos avisos aparecen juntos en el cuadro de diálogo Se encontraron columnas obsoletas, y Quitar todas y guardar quita únicamente las filas marcadas. Mientras la lista de columnas de origen está vacía, se comprueban en su lugar las columnas que asigna el paso, excepto las filas con un resumen Constante, Expresión o Recuento (incluidos nulos), que no leen ninguna columna.

Un origen nombrado con una variable, como {year}/Sales, se comprueba con el valor de la variable en el momento de guardar, y el cuadro de diálogo nombra la tabla que comprobó, por ejemplo 2026/Sales (from {year}/Sales). Una variable establecida por un bucle contiene el valor de su última iteración, por lo que un bucle sobre tablas con estructuras distintas puede avisar de una tabla que la siguiente ejecución no leerá. No se comprueba una tabla que aún no existe, por ejemplo una que crea un paso anterior del flujo de trabajo, ni un origen cuya variable no tiene valor, ni una tabla que el paso encuentra mediante búsqueda al ejecutarse, ni una tabla que no se puede leer en ese momento.

Tipo de datos de la columna

Cada columna de destino tiene un Tipo. Una columna propagada desde el origen conserva el tipo de la columna de origen; una fila que usted agrega manualmente comienza como Texto, y usted define el Tipo para indicar lo que debe ser en realidad: una columna que piensa sumar u ordenar necesita su tipo numérico o de fecha, porque el texto se ordena y se suma como texto.

Un paso guardado con una columna sin ningún tipo se ejecuta igualmente. El tipo se determina cuando el paso se inicia, a partir de la columna de origen que lee esa columna. Si no hay nada de dónde leerlo, se trata como texto: las columnas de un paso Extraer SQL proceden de la consulta que usted escribió y no de un origen asignado, y cuando varios orígenes tienen el mismo nombre de columna con tipos que no coinciden, se usa texto en lugar de adivinar uno de ellos: una suposición errónea produce una conversión que el almacén puede rechazar, y todo se puede convertir a texto.

Definir el Tipo usted mismo sigue siendo la forma de indicar lo que debe ser una columna. Dejarlo sin definir significa aceptar lo que resulte ser la columna de origen.

Cambiar el orden de las columnas

Para reorganizar las columnas de la tabla de datos de destino, seleccione las columnas deseadas. Puede usar cualquiera de estas opciones:

  • Flechas de movimiento masivo: seleccione la opción de movimiento deseada con las flechas de la esquina superior derecha.
  • Menú contextual: haga clic con el botón derecho y seleccione Mover al principio, Subir, Bajar o Mover al final.

Reducir el resultado solo a registros distintos

Para devolver solo opciones distintas, seleccione la opción de menú Distinto. Esto mostrará un conjunto de casillas de verificación para cada columna del origen. Basta con marcar la casilla junto a la columna correspondiente para devolver solo resultados distintos.

Según la situación, quizá convenga considerar el uso de un resumen en su lugar.

El proceso de distinción conserva el primer registro único encontrado y descarta el resto. Quizá convenga aplicar una ordenación a los datos si es importante la coherencia entre ejecuciones.

Agregación y agrupación

Para agregar resultados, seleccione la opción de menú Resumir. Esto mostrará un conjunto de cuadros de selección para cada columna de la tabla de datos de destino. Elija un método de resumen adecuado para cada columna.

Cuando Inspeccionar origen llena las columnas, una columna numérica comienza como Agrupar por en lugar de Suma si su nombre se lee como un identificador, como id, customer_id, Order No o CustomerKey, si su tabla la define como clave, o si la combinación la usa como clave.

  • Agrupar por
  • Suma
  • Mín.
  • Máx.
  • Primero
  • Último
  • Recuento
  • Recuento (incluidos nulos)
  • Media
  • Desviación estándar
  • Desviación estándar muestral
  • Desviación estándar poblacional
  • Varianza
  • Varianza muestral
  • Varianza poblacional
  • Avanzado, sin agrupar

Para un uso avanzado del asignador de datos, como expresiones, limpieza y constantes, consulte Uso avanzado del asignador de datos

Filtros de datos de la tabla

Para ofrecer la máxima flexibilidad, hay filtros de datos disponibles tanto para los datos de origen como para los datos de destino. En conjuntos de datos grandes, puede ser especialmente beneficioso filtrar filas en el origen para que las operaciones restantes se realicen sobre un conjunto de datos más pequeño.

Seleccionar un subconjunto de datos

Este tipo de filtro permite filtrar los datos de origen entrantes según las condiciones especificadas.

Aplicar un filtro secundario a los datos resultantes

Este tipo de filtro permite aplicar un filtro a los datos resultantes posteriores a la transformación según las condiciones especificadas. La posibilidad de aplicar un filtro sobre el resultado transformado permite realizar exclusiones basadas en los resultados de cálculos complejos, resúmenes o funciones de ventana.

Segmentación final de la tabla de datos (límite)

La capacidad de segmentación de filas permite limitar las filas del conjunto de resultados según un intervalo y un punto de inicio.

Sintaxis de filtros

La sintaxis de filtros utiliza Python SQLAlchemy, que es la misma sintaxis que otras expresiones.

Consulte ejemplos y funciones de expresión en el área de Expresiones.

  • La asignación se ajusta a una tabla de destino existente. Cuando la tabla de destino ya existe, el paso no puede asignar una columna que la tabla no tiene, ni dar a una columna un tipo distinto del de la tabla. Numérico y moneda cuentan como el mismo tipo. Se permite que una columna de la tabla quede fuera de la asignación, y se deja vacía en las filas anexadas. El rechazo nombra cada diferencia, por ejemplo Las columnas de destino deben coincidir con la tabla de destino existente ‘sales’. Los tipos difieren: amount (tabla: numeric, paso: text). Una tabla de destino que aún no existe, o una nombrada con una variable, se comprueba cuando se ejecuta el paso.
  • Una asignación vacía se rellena por usted. Si se guarda con una tabla de origen elegida pero sin columnas de origen o de destino, el lado vacío se rellena a partir del origen, como lo haría Rellenar ambas tablas de asignación.