ArcGIS for Desktop

  • Documentation
  • Pricing
  • Support

  • My Profile
  • Help
  • Sign Out
ArcGIS for Desktop

ArcGIS Online

The mapping platform for your organization

ArcGIS for Desktop

A complete professional GIS

ArcGIS for Server

GIS in your enterprise

ArcGIS for Developers

Tools to build location-aware apps

ArcGIS Solutions

Free template maps and apps for your industry

ArcGIS Marketplace

Get apps and data for your organization

  • Documentation
  • Pricing
  • Support
Esri
  • Sign In
user
  • My Profile
  • Sign Out

Help

  • Home
  • Get Started
  • Map
  • Analyze
  • Manage Data
  • Tools
  • More...

Join Field

  • Summary
  • Illustration
  • Usage
  • Syntax
  • Code sample
  • Environments
  • Licensing information

Summary

Joins the contents of a table to another table based on a common attribute field. The input table is updated to contain the fields from the join table. You can select which fields from the join table will be added to the input table.

The records in the Input Table are matched to the records in the Join Table based on the values of Input Join Field and the Output Join Field. Optionally, only desired fields can be selected from the Join Table and appended to the Input Table during the join.

Illustration

The join field tool

Usage

  • The Input Table can be a feature class (including shapefile) or a table.

  • All fields in the Input Table will be kept during the join. Optionally, only selected fields from the Join Table will be added to the output. These can be checked under the Join Fields parameter.

  • Records from the Join Table can be matched to more than one record in the Input Table. For more information on one-to-one, many-to-one, one-to-many, and many-to-many joins, see About joining and relating tables.

  • If no fields are selected for the optional Join Fields parameter, all fields from the Join Table to the output will be joined.

  • Joins can be based on fields of types text, date, or number.

  • Joins based on text fields are case-sensitive.

  • Fields of different number formats can be joined as long as the values are equal. For example, a field of type float can be joined to a short integer field.

  • The Input Join Field and the Output Join Field can have different names.

  • If a join field has the same name as a field from the input table, the joined field will be appended by _1 (or _2, or _3, and so on) to make it unique.

  • If values in the Output Join Field are not unique, only the first occurrence of each value will be used.

    • To account for join table values other than the first occurrence, start by executing the Summary Statistics tool using the Join Table as input. Summary Statistics allows you to summarize fields (for example, sum, mean, min).
      Summarizing data before joining
    • To merge two or more fields in the join table before the join, first export the table or feature class using the Table To Table tool and merge using the tool's field map.
      Using the Table to Table tool before joining

Syntax

JoinField_management (in_data, in_field, join_table, join_field, {fields})
ParameterExplanationData Type
in_data

The table or feature class to which the join table will be joined.

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

The field in the input table on which the join will be based.

Field
join_table

The table to be joined to the input table.

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

The field in the join table that contains the values on which the join will be based.

Field
fields
[fields,...]
(Optional)

The fields from the join table to be included in the join.

Field

Code sample

JoinField example 1 (Python window)

The following Python window script demonstrates how to use the JoinField function in immediate mode.

import arcpy
from arcpy import env
env.workspace = "C:/data/data.gdb"
arcpy.JoinField_management("zion_park", "zonecode", "zion_zoning", "zonecode", ["land_use","land_cover"])
JoinField example 2 (stand-alone Python script)

This stand-alone Python script shows the JoinField function used to join a table to a feature class and only include two of the table's fields in the join.

# PermanentJoin.py
# Purpose: Join two fields from a table to a feature class 

# Import system modules
import arcpy
from arcpy import env

# Set the current workspace 
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)

Environments

  • Auto Commit
  • Current Workspace

Licensing information

  • ArcGIS for Desktop Basic: Yes
  • ArcGIS for Desktop Standard: Yes
  • ArcGIS for Desktop Advanced: Yes

Related topics

  • An overview of the Joins toolset

ArcGIS for Desktop

  • Home
  • Documentation
  • Pricing
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS for Desktop
  • ArcGIS for Server
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

About Esri

  • About Us
  • Careers
  • Insiders Blog
  • User Conference
  • Developer Summit
Esri
Tell us what you think.
© Copyright 2016 Environmental Systems Research Institute, Inc. | Privacy | Legal