Disponible con una licencia Advanced.
Resumen
Une las definiciones y los valores de los elementos de dos tablas sobre la base de un elemento compartido. La unión implica anexar los elementos (campos) de una tabla a los de otra mediante un atributo o elemento común a ambas tablas. Las uniones se utilizan normalmente para asociar más atributos a la tabla de atributos de una capa geográfica.
Se asigna un registro en Tabla Info de unión a cada registro de la tabla INFO de entrada cuando los valores Elemento de relación y Start Item son iguales. Los valores de elemento de los dos registros se copian en la tabla de resultados.
Ilustración
Uso
Para mantener la integridad de una tabla INFO de entidad, no inserte elementos antes del ID de la tabla INFO de entrada (cuando la tabla INFO de salida sea igual a la tabla INFO de entrada).
Se recomienda utilizar un elemento relacionado de la misma definición en las dos tablas que se van a unir.
Si se encuentra el mismo nombre de elemento en ambas tablas, el elemento de la tabla INFO de entrada se mantiene y el elemento de la tabla INFO de unión se excluye.
Para evitar la pérdida de información y el almacenamiento de datos redundantes, asegúrese de que los elementos de las dos tablas concuerden uno a uno. Si esta correspondencia uno a uno no existe, se producirá una de las situaciones siguientes:
- Si un registro de la tabla INFO de entrada concuerda con más de un registro de la tabla INFO de salida, solo se guardará una concordancia en la tabla INFO de salida. El registro que está guardado puede ser o no la primera concordancia del archivo, dependiendo de si el elemento está indizado.
- Si un registro de la tabla INFO de entrada no concuerda con ningún registro de la tabla INFO de salida, los valores de la tabla INFO de unión del registro correspondiente de la tabla INFO de salida se establecen en cero o se dejan en blanco.
- Si un registro de la tabla INFO de unión concuerda con más de un registro de la tabla INFO de entrada, el registro de la tabla INFO de unión se combinará con todos los registros de la tabla INFO de entrada que concuerden.
- Si un registro de la tabla INFO de unión no coincide con ningún registro de la tabla INFO de entrada, no aparecerá en la tabla INFO de salida.
Cuando especifique el elemento inicial, no inserte los elementos que se van a unir antes del ID de tabla INFO de entrada de ninguna tabla INFO de entidad.
Si la tabla INFO de entrada y la tabla INFO de unión tienen campos idénticos, entonces Unir tablas Info devolverá un mensaje "No Non-duplicate items in join.file". Significa que no había ningún nuevo elemento que unir.
La velocidad de ejecución dependerá de la organización de los archivos que se esté uniendo. En general, LINK es la operación de concordancia más rápida, a continuación LINEAR con un elemento relacionado indizado y, a continuación, ORDERED. Aunque es la opción más rápida, LINK no se puede aplicar a la mayoría de los casos.
La opción LINEAR se optimiza si se ha indizado el elemento relacionado.
La tabla INFO de entrada y la tabla INFO de unión pueden contener elementos redefinidos. Un elemento redefinido se puede utilizar como elemento relacionado en la mayoría de los casos. Cuando un elemento redefinido contiene elementos de tipos diferentes y es numérico, no se recomienda utilizarlo como elemento relacionado. Este tipo de elemento redefinido puede producir números ilógicos o intraducibles.
Si la tabla INFO de unión contiene más de un registro para cada valor del elemento relacionado, se utilizará el primer registro que encuentre Unir tablas Info. Esto solo se aplica a la opción LINEAR.
No es necesario que los nombres de elemento alternativos del elemento relacionado sean iguales para que Unir tablas Info funcione.
Puede asociar un elemento entero a un elemento numérico siempre que los valores sean idénticos. Por ejemplo, un elemento entero con un valor de 123 concordará con un elemento numérico cuyo valor sea 123,00 pero no concordará con un valor de 123,01 o 122,99.
Puede asociar un elemento numérico a otro elemento numérico que tenga un número diferente de posiciones decimales, siempre que los valores coincidan. Por ejemplo, un elemento numérico con dos posiciones decimales cuyo valor sea 123,45 concordará con un elemento numérico con cuatro posiciones decimales que tenga un valor de 123,4500. Sin embargo, no coincidirá con un valor de 123,4501 o 123,4499. El número de posiciones decimales en el elemento relacionado de la tabla INFO de salida será igual al número de lugares decimales del elemento relacionado de la tabla INFO de entrada.
Para mantener la tabla de entrada, nombre la tabla de salida de manera diferente.
Sintaxis
arcpy.arc.JoinItem(in_info_table, join_info_table, out_info_table, relate_item, {start_item}, {relate_type})
Parámetro | Explicación | Tipo de datos |
in_info_table | El archivo de datos INFO al que se van a agregar los elementos y sus valores. | INFO Table |
join_info_table | El archivo de datos INFO que contiene los elementos y valores que se van a agregar. | INFO Table |
out_info_table | El archivo de datos INFO producido por las tablas INFO de unión. Si la tabla INFO de salida ya existe, será reemplazada. | INFO Table |
relate_item | Un elemento contenido en la tabla INFO de entrada que se utiliza como un índice para los registros de la tabla INFO de unión. Puede ser un elemento redefinido. | String |
start_item (Opcional) | El elemento de la tabla INFO de entrada después del cual se insertarán los elementos de la tabla INFO de unión. El elemento de inicio predeterminado es el último elemento de la tabla INFO de entrada. | String |
relate_type (Opcional) | Cómo se asocian los registros de la tabla INFO de unión a los registros de la tabla INFO de entrada.
| String |
Muestra de código
Ejemplo de JoinItem (secuencia de comandos independiente)
La siguiente secuencia de comandos independiente demuestra cómo unir dos tablas INFO.
# Name: JoinItem_Example.py
# Description: Joins two INFO tables
# Requirements: ArcInfo Workstation
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inInfoTable = "maritime1/us5tx51m_p/point"
joinInfoTable = "maritime1/us5tx51m.lights_ncode"
outInfoTable = "C:/output/lightpoints"
relateItem = "RCID"
# Execute JoinItem
arcpy.JoinItem_arc(inInfoTable, joinInfoTable, outInfoTable,
relateItem, "", "")
Entornos
Información de licenciamiento
- Basic: No
- Standard: No
- Advanced: Requiere ArcInfo Workstation instalado