Добавить соединение (Add Join) (Управление данными (Data Management))

Уровень лицензии:BasicStandardAdvanced

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

Присоединяет один слой к другому слою или таблице (где слой — это слой объектов, табличный вид или растровый слой с таблицей атрибутов растра) на основе общего поля.

Записи в Присоединенной таблице (Join Table) соответствуют записям входного Имени слоя (Layer Name). Соответствие делается, если значения входной присоединенной таблицы и выходной присоединенной таблицы равны. Соединение временное.

Рисунок

Добавить соединение (Add Join)

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

Синтаксис

AddJoin_management (in_layer_or_view, in_field, join_table, join_field, {join_type})
ПараметрОбъяснениеТип данных
in_layer_or_view

Слой или представление таблицы, к которым будет присоединяться таблица соединения.

Mosaic Layer; Raster Catalog Layer; Raster Layer; Table View
in_field

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

Field
join_table

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

Mosaic Layer; Raster Catalog Layer; Raster Layer; Table View
join_field

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

Field
join_type
(дополнительно)

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

  • KEEP_ALLВсе записи входного слоя или представления таблицы будут включены в выходные данные; это внешнее соединение. Это значение используется по умолчанию.
  • KEEP_COMMONТолько те записи входных данных, которые соответствуют строке в таблице соединения, будут представлены в результате; это внутреннее соединение.
Boolean

Пример кода

Пример AddJoin 1 (окно Python)

Пример скрипта Python для выполнения функции Добавить соединение (Add Join) в непосредственном режиме.

import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.MakeFeatureLayer_management ( "Habitat_Analysis.gdb/vegtype", "veg_layer")
arcpy.AddJoin_management( "veg_layer", "HOLLAND95", "vegtable.dbf", "HOLLAND95")
arcpy.CopyFeatures_management( "veg_layer", "Habitat_Analysis.gdb/vegjoin")
Пример AddJoin 2 (автономный скрипт)

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

# Name: AttributeSelection.py
# Purpose: Join a table to a featureclass and select the desired attributes

# Import system modules
import arcpy
from arcpy import env

try:
    # Set environment settings
    env.workspace = "C:/data"
    env.qualifiedFieldNames = False
    
    # Set local variables    
    inFeatures = "Habitat_Analysis.gdb/vegtype"
    layerName = "veg_layer"
    joinTable = "vegtable.dbf"
    joinField = "HOLLAND95"
    expression = "vegtable.HABITAT = 1"
    outFeature = "Habitat_Analysis.gdb/vegjoin"
    
    # Create a feature layer from the vegtype featureclass
    arcpy.MakeFeatureLayer_management (inFeatures,  layerName)
    
    # Join the feature layer to a table
    arcpy.AddJoin_management(layerName, joinField, joinTable, joinField)
    
    # Select desired features from veg_layer
    arcpy.SelectLayerByAttribute_management(layerName, "NEW_SELECTION", expression)
    
    # Copy the layer to a new permanent feature class
    arcpy.CopyFeatures_management(layerName, outFeature)
    
except Exception, e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print "Line %i" % tb.tb_lineno
    print e.message

Параметры среды

Связанные темы

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

ArcGIS for Desktop Basic: Да
ArcGIS for Desktop Standard: Да
ArcGIS for Desktop Advanced: Да
5/10/2014