Zusammenfassung
Stellt Verbindungen des Inhalts einer Tabelle auf der Grundlage eines gemeinsamen Attributfeldes mit einer anderen Tabelle her. Die Eingabetabelle wird so aktualisiert, dass sie die Felder aus der Join-Tabelle enthält. Sie können auswählen, welche Felder aus der Join-Tabelle der Eingabetabelle hinzugefügt werden.
Die Datensätze in der Eingabetabelle werden den Datensätzen in der Join-Tabelle zugeordnet. Die Zuordnung basiert auf den Parametern Eingabe-Join-Feld und Join-Tabellen-Feld. Bei Bedarf können Sie in der Join-Tabelle bestimmte Felder auswählen, die bei der Verbindung an die Eingabetabelle angehängt werden sollen.
Verwendung
Bei der Eingabetabelle kann es sich um eine Feature-Class (einschließlich Shapefile) oder eine Tabelle handeln.
Alle Felder in der Eingabetabelle werden bei der Verbindung beibehalten. Optional können Sie aus der Join-Tabelle bestimmte Felder auswählen, die der Ausgabe hinzugefügt werden sollen. Diese können Sie unter dem Parameter Felder übertragen aktivieren.
Datensätze aus der Join-Tabelle können mehr als einem Datensatz in der Eingabetabelle zugeordnet werden.
Falls für den optionalen Parameter Felder übertragen keine Felder ausgewählt werden, werden der Ausgabe standardmäßig alle Felder der Join-Tabelle hinzugefügt.
Verbindungen können auf Feldern vom Typ "Text", "Datum" oder "Zahl" basieren.
Bei Verbindungen auf Basis von Textfeldern wird zwischen Groß- und Kleinschreibung unterschieden.
Felder mit verschiedenen Zahlenformaten können verbunden werden, wenn die Werte gleich sind. Sie können z. B. ein Feld vom Typ "Float" mit einem Feld vom Typ "Short Integer" verbinden.
Das Eingabe-Join-Feld und das Join-Tabellen-Feld können unterschiedliche Namen haben.
Falls ein Join-Feld denselben Namen wie ein Feld der Eingabetabelle trägt, wird an das verbundene Feld _1 (oder _2 bzw. _3 usw.) angehängt, um es eindeutig zu benennen.
Wenn die Werte im Join-Tabellen-Feld nicht eindeutig sind, wird nur das erste Vorkommen der jeweiligen Werte verwendet.
- Wenn andere Join-Tabellenwerte als das erste Vorkommen berücksichtigt werden sollen, führen Sie zunächst das Werkzeug Summenstatistik aus, und verwenden Sie die Join-Tabelle als Eingabe. Mit Summenstatistik können Sie Felder (z. B., Summe, Mittelwert, Minimum) zusammenfassen.
- Um zwei oder mehr Felder in der Join-Tabelle vor dem Verbinden zusammenzuführen, exportieren Sie zunächst die Tabelle oder Feature-Class mit dem Werkzeug Tabelle in Tabelle. Führen Sie sie dann mit der Feldzuordnung des Werkzeugs zusammen.
Mit dem Werkzeug Verbindung überprüfen kann eine Verbindung zwischen zwei Layern oder Tabellen überprüft werden, um zu bestimmen, ob die Layer oder Tabellen gültige Feldnamen und Objekt-ID-Felder enthalten, ob die Verbindung übereinstimmende Datensätze generiert, ob die Verbindung eine Eins-zu-Eins- oder Eins-zu-Viele-Verbindung ist, und um weitere Eigenschaften der Verbindung zu bestimmen.
Aus Gründen der Benutzerfreundlichkeit ist im Dialogfeld dieses Werkzeugs eine Schaltfläche zum Überprüfen der Verbindung verfügbar.
Syntax
JoinField(in_data, in_field, join_table, join_field, {fields})
Parameter | Erklärung | Datentyp |
in_data | Die Tabelle oder die Feature-Class, mit der die Join-Tabelle verbunden wird. | Mosaic Layer; Raster Layer; Table View |
in_field | Das Feld in der Eingabetabelle, auf dem die Verbindung basieren soll. | Field |
join_table | Die Tabelle, die mit der Eingabetabelle verbunden werden soll. | Mosaic Layer; Raster Layer; Table View |
join_field | Das Feld in der Join-Tabelle, das die Werte enthält, auf denen die Verbindung basiert. | Field |
fields [fields,...] (optional) | Die Felder aus der Join-Tabelle, die in die Eingabetabelle übertragen werden sollen, basierend auf einer Verbindung zwischen der Eingabetabelle und der Join-Tabelle. | Field |
Abgeleitete Ausgabe
Name | Erklärung | Datentyp |
out_layer_or_view | Das aktualisierte Eingabe-Dataset. | Tabellensicht; Raster-Layer; Mosaik-Layer |
Codebeispiel
Das folgende Skript für das Python-Fenster veranschaulicht, wie die Funktion JoinField im unmittelbaren Modus verwendet wird.
import arcpy
arcpy.env.workspace = "C:/data/data.gdb"
arcpy.JoinField_management("zion_park", "zonecode", "zion_zoning", "zonecode",
["land_use", "land_cover"])
In diesem eigenständigen Python-Skript wird veranschaulicht, wie die JoinField-Funktion zum Verbinden einer Tabelle mit einer Feature-Class verwendet wird, wobei nur zwei der Tabellenfelder in der Verbindung berücksichtigt werden.
# 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)
Umgebungen
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja