Соединение полей (Управление данными)

Краткая информация

Соединяет содержание таблицы с другой таблицей на основе общего атрибутивного поля. Входная таблица обновляется, чтобы содержать поля из присоединенной таблицы. Вы можете выбрать, какие поля из присоединяемой таблицы будут добавлены в входную таблицу.

Записи во Входной таблице сопоставляются с записями в Присоединяемой таблице на основе значений Входного поля соединения и Поля соединяемой таблицы. При необходимости можно выбрать поля в Присоединяемой таблице, чтобы добавить их во Входную таблицу в процессе соединения.

Использование

  • Входная таблица может быть классом пространственных объектов (включая шейп-файл) или таблицей.

  • Все поля входной таблицы сохраняются во время соединения. При необходимости можно выбрать поля из Присоединяемой таблицы, которые будут добавлены в выходные данные. Они могут быть отмечены с помощью параметра Перенос полей.

  • Записи из присоединяемой таблицы могут соответствовать нескольким записям во входной таблице.

  • Если для дополнительного параметра Перенос полей не выбраны поля, будут присоединены все поля из Присоединяемой таблицы с выходными данными.

  • Соединения могут основываться на полях типа текст, дата или числовых.

  • Соединения, основанные на текстовых полях, чувствительны к регистру.

  • Поля различных числовых форматов могут соединяться, только если их значения равны. Например, тип поля с плавающей точкой может быть соединен с полем короткого целочисленного значения.

  • Входное поле соединения и Поле соединяемой таблицы могут иметь разные имена.

  • Если поле соединения имеет то же имя, что и поле из входной таблицы, к присоединенному полю будет добавлено _1 (или _2 или _3 и т.д.), чтобы сделать его уникальным.

  • Если значения в Поле соединяемой таблицы не уникальны, будет использоваться только первое встреченное значение.

    • Чтобы учесть значения соединяемых таблиц, отличные от первого вхождения, начните с запуска инструмента Суммарная статистика, используя результаты инструмента Соединить таблицу в качестве входных данных. Суммарная статистика позволяет суммировать поля (например, получать сумму, среднее, минимум).
    • Чтобы объединить два или более полей в соединяемой таблице до соединения, сначала экспортируйте таблицу или класс пространственных объектов с помощью инструмента Таблица в таблицу. Затем выполните их слияние с помощью сопоставления полей инструмента.
  • Инструмент Проверить соединение можно использовать для проверки соединения между двумя слоями или таблицами, это позволит определить, есть ли у слоев или таблиц допустимые имя полей и поля Object ID, будут ли в ходе соединения сопоставленные записи, тип кардинальности (один-к-одному или один-ко-многим) и другие свойства соединения.

    Для простоты использования кнопка для проверки соединения доступна в диалоговом окне инструмента.

Параметры

ПодписьОписаниеТип данных
Входная таблица

Таблица или класс пространственных объектов, к которым будет присоединена таблица соединения.

Mosaic Layer; Raster Layer; Table View
Входное поле соединения

Поле входной таблицы, на котором будет основано соединение.

Field
Соединяемая таблица

Таблица, которая будет присоединена к входной таблице.

Mosaic Layer; Raster Layer; Table View
Поле соединяемой таблицы

Поле соединяемой таблицы, содержащее значения, на которых будет основываться соединение.

Field
Перенос полей
(Дополнительный)

Поля из присоединяемой таблицы, которые должны быть перенесены во входную таблицу на основе соединения между входной и присоединяемой таблицами.

Field

Производные выходные данные

ПодписьОписаниеТип данных
Обновленная входная таблица

Обновленный входной набор данных.

Представление таблицы; Растровый слой; Слой мозаики

arcpy.management.JoinField(in_data, in_field, join_table, join_field, {fields})
ИмяОписаниеТип данных
in_data

Таблица или класс пространственных объектов, к которым будет присоединена таблица соединения.

Mosaic Layer; Raster Layer; Table View
in_field

Поле входной таблицы, на котором будет основано соединение.

Field
join_table

Таблица, которая будет присоединена к входной таблице.

Mosaic Layer; Raster Layer; Table View
join_field

Поле соединяемой таблицы, содержащее значения, на которых будет основываться соединение.

Field
fields
[fields,...]
(Дополнительный)

Поля из присоединяемой таблицы, которые должны быть перенесены во входную таблицу на основе соединения между входной и присоединяемой таблицами.

Field

Производные выходные данные

ИмяОписаниеТип данных
out_layer_or_view

Обновленный входной набор данных.

Представление таблицы; Растровый слой; Слой мозаики

Пример кода

JoinField, пример 1 (окно Python)

Пример скрипта окна Python для использования функции JoinField в режиме прямого запуска.

import arcpy
arcpy.env.workspace = "C:/data/data.gdb"
arcpy.JoinField_management("zion_park", "zonecode", "zion_zoning", "zonecode", 
                           ["land_use", "land_cover"])
JoinField, пример 2 (автономный скрипт)

На этом автономном скрипте Python показана функция JoinField, которая используется для присоединения таблицы к классу пространственных объектов и включает только два поля из соединяемой таблицы.

# PermanentJoin.py
# Purpose: Join two fields from a table to a feature class 
# Import system modules
import arcpy
# Set the current workspace 
arcpy.env.workspace = "c:/data/data.gdb"
# Set the local parameters
inFeatures = "zion_park"
joinField = "zonecode"
joinTable = "zion_zoning"
fieldList = ["land_use", "land_cover"]
# Join two feature classes by the zonecode field and only carry 
# over the land use and land cover fields
arcpy.JoinField_management(inFeatures, joinField, joinTable, joinField, 
                           fieldList)

Информация о лицензиях

  • Basic: Да
  • Standard: Да
  • Advanced: Да

Связанные разделы