Ajouter une jointure (Gestion des données)

Récapitulatif

Joint une couche à une autre couche ou table ("couche" étant une couche d'entités, une vue tabulaire ou une couche raster avec une table attributaire de rasters) selon un champ commun.

Les enregistrements dans la Table de jointure sont appariés aux enregistrements du Nom de la couche en entrée. Un appariement est effectué lorsque les valeurs de champ de jointure en entrée et de champ de jointure de la sortie sont égales. Cette jointure est temporaire.

Illustration

Ajouter une jointure

Utilisation

Syntaxe

AddJoin_management (in_layer_or_view, in_field, join_table, join_field, {join_type})
ParamètreExplicationType de données
in_layer_or_view

La couche ou la vue tabulaire à laquelle la table de jointure sera jointe.

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

Le champ de la couche ou de la vue tabulaire en entrée sur lequel la jointure sera basée.

Field
join_table

La table ou la vue tabulaire à joindre à la couche ou à la vue tabulaire en entrée.

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

Champ dans la table de jointure qui contient les valeurs sur lesquelles sera basée la jointure.

Field
join_type
(Facultatif)

Précise ce qu'il adviendra des enregistrements en entrée qui correspondent à un enregistrement de la table de jointure.

  • KEEP_ALLTous les enregistrements de la couche ou de la vue tabulaire en entrée sont inclus dans la sortie ; également appelée jointure externe. Il s'agit du paramétrage par défaut.
  • KEEP_COMMONSeuls les enregistrements en entrée qui correspondent à une ligne de la table de jointure sont présents dans le résultat ; également appelée jointure interne.
Boolean

Exemple de code

Exemple AddJoin (fenêtre Python)

Le script de fenêtre Python suivant illustre l'utilisation de la fonction AddJoin en mode immédiat.

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")
Exemple 2 d'utilisation de l'outil AddJoin (script autonome)

Ce script autonome montre la fonction AddJoin dans le cadre d'un workflow pour joindre une table à une classe d'entités et extraire ensuite les entités voulues.

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

# 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

Environnements

Rubriques connexes

Informations de licence

ArcView : Oui
ArcEditor : Oui
ArcInfo : Oui

7/10/2012