Comando MERGE

Combina registros de dos tablas de Analytics ordenadas con estructuras idénticas en una nueva tabla de Analytics que usa el mismo criterio de ordenamiento que las tablas originales.

Sintaxis

MERGE {ON campos_clave|PKEY campos_clave_primarios SKEY campos_clave_secundarios} <IF prueba> TO nombre_tabla <LOCAL> <OPEN> <WHILE prueba> <FIRST rango|NEXT rango> <APPEND> <PRESORT> <ISOLOCALE código_lugar>

Parámetros

Nombre Descripción
ON campos_clave | PKEY campos_clave_primarios SKEY campos_clave_secundarios

Nota

Solo los campos de caracteres, o los campos calculados de caracteres, se pueden usar como campos clave en MERGE.

  • ON campos_clave el campo o los campos clave que se deben fusionar si los campos clave correspondientes de las tablas primaria y secundaria tienen el mismo nombre

    Si los campos correspondientes tienen diferentes nombres o si son expresiones en lugar de campos físicos reales, debe usar PKEY y SKEY.

  • PKEY campos_clave_primarios el o los campos clave, o expresiones, de la tabla primaria
  • SKEY campos_clave_primarios el o los campos clave, o expresiones, de la tabla secundaria

Requisito de ordenamiento

Los campos clave de las tablas primaria y secundaria deben estar ordenados en orden ascendente. Si uno o ambos campos clave no están ordenados, o lo están en orden descendente, el comando MERGE no se completa correctamente.

Puede utilizar PRESORT para ordenar el campo clave primario. Si el campo clave secundario no está ordenado, debe ordenarlo en una operación de ordenación independiente antes de realizar la fusión.

Indexar en lugar de ordenar

Puede indexar la tabla primaria y la secundaria en lugar de ordenarlas. Con tablas extensas, la indexación en lugar del ordenamiento puede reducir el tiempo necesario para fusionar las tablas.

IF prueba

opcional

Una expresión condicional que debe ser verdadera para procesar cada registro. El comando se ejecuta únicamente en los registros que cumplen la condición.

Nota

El parámetro IF se evalúa únicamente con los registros que quedan en la tabla después de aplicar los parámetros de alcance (WHILE, FIRST, NEXT).

TO nombre_tabla

El lugar al que se deben enviar los resultados del comando:

  • nombre_tabla guarda los resultados en una tabla de Analytics

    Especifique el nombre_tabla como una cadena entre comillas con la extensión de archivo .FIL. Por ejemplo: TO "Salida.FIL"

    Por valor predeterminado, el archivo de datos de la tabla (.FIL) se guarda en la carpeta que contiene el proyecto de Analytics.

    Utilice una ruta de archivo absoluta o relativa para guardar el archivo de datos en una carpeta existente o una diferente:

    • TO "C:\Salida.FIL"
    • TO "Resultados\Salida.FIL"

    Nota

    Los nombres de las tablas tienen un límite de 64 caracteres alfanuméricos, sin incluir la extensión .FIL. El nombre puede incluir un guión bajo ( _ ), pero no puede incluir ningún otro carácter especial ni espacios. El nombre no puede comenzar con un número.

LOCAL

opcional

Guarda el archivo de salida en la misma ubicación que el proyecto de Analytics.

Nota

Aplicable únicamente al ejecutar el comando en una tabla de servidor con un archivo de salida que es una tabla de Analytics.

OPEN

opcional

Abre la tabla creada por el comando después de la ejecución del comando. Solo es válido si el comando crea una tabla de salida.

WHILE prueba

opcional

Una expresión condicional que debe ser verdadera para procesar cada registro. El comando se ejecuta hasta que la condición se evalúa como falsa o hasta que se llega al final de la tabla.

Nota

Si usa WHILE junto con FIRST o NEXT, el procesamiento de registros se detiene al llegar a un límite.

FIRST rango | NEXT rango

opcional

La cantidad de registros que se procesarán:

  • FIRST comienza a procesar desde el primer registro hasta que se llega al número de registros especificado
  • NEXT comienza a procesar desde el registro seleccionado actualmente hasta que se llega al número de registros especificado

Utilice intervalo para especificar la cantidad de registros que se deben procesar.

Si omite FIRST y NEXT, se procesan todos los registros de forma predeterminada.

APPEND

opcional

Anexa la salida del comando al final de un archivo existente en lugar de sobrescribir el archivo.

Nota

Debe asegurarse de que la estructura de la salida del comando y del archivo existente sean idénticas:

  • los mismos campos
  • el mismo orden de campos
  • los campos coincidentes son de la misma longitud
  • los campos coincidentes tienen el mismo tipo de datos

Analytics anexa la salida a un archivo existente sin importar cuál sea su estructura. Si la estructura de la salida y la del archivo existente no coinciden, es posible que los datos que se obtengan estén incompletos, mezclados o sean imprecisos.

PRESORT

opcional

Ordena la tabla primaria por el campo primario antes de ejecutar el comando.

Nota

No puede utilizar PRESORT dentro del comando GROUP.

Omita PRESORT:

  • Si el campo clave primario ya está ordenado
  • Si está fusionando dos tablas usando un campo clave común indexado

ISOLOCALE código_lugar

opcional

Nota

Aplicable únicamente en la edición Unicode de Analytics.

El idioma (configuración regional) del sistema en el formato idioma_país. Por ejemplo, para francés de Canadá, ingrese el código fr_ca.

Use los siguientes códigos:

  • idioma códigos de idioma estándar ISO 639
  • país códigos de país estándar ISO 3166

    Si no especifica un código de país, se utiliza el país predeterminado para el idioma.

Si no utiliza ISOLOCALE, se utiliza la configuración regional predeterminada del sistema.

Ejemplos

Fusionar tablas con nombres de campos de clave idénticos

El ejemplo siguiente fusiona dos tablas con nombres de campos clave idénticos:

OPEN Ubicación_empleados_1 PRIMARY
OPEN Ubicación_empleados_2 SECONDARY
MERGE ON Apellido TO “Todos_los_empleados.fil” PRESORT

Fusionar tablas con diferentes nombres de campos clave

El ejemplo siguiente fusiona dos tablas con nombres de campos clave diferentes:

OPEN Ubicación_empleados_1 PRIMARY
OPEN Ubicación_empleados_2 SECONDARY
MERGE PKEY Apellido SKEY Ape TO "Todos_los_empleados" PRESORT

Observaciones

Nota

Si desea obtener más información sobre la forma en la que funciona este comando, consulte Guía de ayuda.

Alternativas a la fusión

Puede ser problemático realizar una fusión correcta. Puede obtener el mismo resultado anexando o extrayendo y anexando, y luego ordenando.

Si desea obtener más información, consulte Comando APPEND y Comando EXTRACT.

Si las dos tablas de origen ya están ordenadas, fusionarlas es más eficiente y se puede ejecutar de forma más rápida.

Guía de creación de scripts de ACL 14.1