Joindre un champ (Gestion des données)

Synthèse

Joint définitivement le contenu d’une table à une autre table en fonction d’un champ attributaire commun. La table en entrée est mise à jour pour contenir les champs de la table de jointure. Vous pouvez sélectionner les champs de la table de jointure qui seront ajoutés à la table en entrée.

Les enregistrements de la valeur Table en entrée sont appariés aux enregistrements de la valeur Table de jointure en fonction des valeurs des paramètres Champ de jointure en entrée et Champ de la table de jointure. Il est également possible de sélectionner des champs spécifiques de la valeur Table de jointure et de les ajouter à la valeur Table en entrée pendant la jointure.

Utilisation

  • La valeur Table en entrée peut être une classe d’entités (y compris un shapefile) ou une table.

  • Tous les champs de la valeur Table en entrée sont conservés pendant la jointure. Vous pouvez également sélectionner certains champs de la valeur Table de jointure pour les ajouter à la sortie. Pour les ajouter, utilisez le paramètre Transférer des champs.

  • Les enregistrements de la valeur Table de jointure peuvent être appariés à plusieurs enregistrements de la valeur Table en entrée.

  • Si aucun champ n’est sélectionné pour le paramètre facultatif Transférer des champs, tous les champs de la valeur Table de jointure sont joints à la sortie.

  • Les jointures peuvent être basées sur des champs de type texte, date ou nombre.

  • Les jointures basées sur des champs de texte respectent la casse.

  • Les champs présentant des formats de nombre différents peuvent être joints tant que les valeurs sont égales. Par exemple, un champ de type flottant peut être joint à un champ de type entier court.

  • La valeur Champ de jointure en entrée et la valeur Champ de la table de jointure peuvent porter des noms de champ différents.

  • Si un champ de jointure porte le même nom qu’un champ de la table en entrée, le suffixe _1 (ou _2, ou _3, etc.) est ajouté au nom du champ joint pour le rendre unique.

  • Si les valeurs de la valeur Champ de la table de jointure ne sont pas uniques, seule la première occurrence de chaque valeur est utilisée.

    • Pour prendre en compte des valeurs de table de jointure autres que la première occurrence, commencez par exécuter l’outil Résumés statistiques en utilisant la valeur Table de jointure en entrée. L’outil Résumés statistiques vous permet de récapituler les champs (par exemple, somme, moyenne, minimum).
    • Pour fusionner deux champs ou plus dans la table de jointure avant la jointure, commencez par exporter la table ou la classe d’entités à l’aide de l’outil Table vers table. Ensuite, fusionnez-les à l’aide de l’appariement de champs de l’outil.
  • Pour gérer les champs dans le jeu de données en sortie, ainsi que le contenu de ces champs, utilisez le paramètre Appariement des champs.

    • Pour modifier l’ordre des champs, sélectionnez un nom de champ et faites-le glisser jusqu’à la nouvelle position.
    • Le type de données par défaut d’un champ en sortie est identique au type de données du premier champ en entrée (du même nom) qu’il rencontre. Vous pouvez à tout moment changer manuellement le type de données pour tout autre type de données valide.
    • Les règles de combinaison disponibles sont : premier, dernier, joindre, somme, moyenne, médiane, mode, minimum, maximum, écart type, et total.
    • Lorsque vous utilisez la règle de combinaison Join (Joindre), vous pouvez spécifier un délimiteur (espace, virgule, point, tiret, etc.). Pour utiliser un espace, vérifiez que le pointeur de la souris se trouve au début de la zone de saisie et appuyez une fois sur la barre d’espacement.
    • Vous pouvez spécifier les positions de début et de fin des champs de texte à l'aide de l'option de format.
    • N’exécutez pas d’écart type sur une entrée unique car les valeurs ne peuvent pas être divisées par zéro. L'écart type n'est pas une option valide pour les entrées uniques.

    En savoir plus sur l'appariement de champs dans les scripts

  • L’outil Valider une jointure peut être utilisé pour valider une jointure entre deux couches ou tables afin de déterminer si celles-ci ont des noms de champ et des champs d’ID d’objet valides, si la jointure produit des enregistrements correspondants, s’il s’agit d’une jointure un vers un ou un vers plusieurs, ou d’autres propriétés de la jointure.

    Pour faciliter l’utilisation de l’outil, la boîte de dialogue associée contient un bouton permettant de valider la jointure.

Paramètres

ÉtiquetteExplicationType de données
Table en entrée

Table ou classe d’entités à laquelle la table de jointure sera jointe.

Mosaic Layer; Raster Layer; Table View
Champ de jointure en entrée

Champ de la table en entrée sur lequel la jointure sera basée.

Field
Table de jointure

Table à joindre à la table en entrée.

Mosaic Layer; Raster Layer; Table View
Champ de la table de jointure

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

Field
Transférer des champs
(Facultatif)

Champs de la table de jointure à transférer vers la table en entrée, selon une jointure entre la table en entrée et la table de jointure.

Field
Méthode de transfert
(Facultatif)

Spécifie comment les champs de jointure et les types de champ sont transférés vers la sortie.

  • Sélectionner les champs à transférerLes champs et les types de champ de la table jointe sont transférés vers la sortie. Il s’agit de l’option par défaut.
  • Utiliser l’appariement de champsLe transfert des champs et des types de champ de la table jointe vers la sortie est contrôlé par le paramètre Appariement des champs.
String
Appariement des champs
(Facultatif)

Les champs attributaires qui figurent dans la sortie avec les propriétés de champ correspondantes et les champs source. Par défaut, tous les champs des entrées seront inclus.

Il est possible d’ajouter, de supprimer, de renommer, de réorganiser les champs, ainsi que de modifier leurs propriétés.

Les règles de combinaison permettent de spécifier la manière dont les valeurs de deux champs en entrée ou plus sont combinées ou fusionnées en une seule valeur en sortie. Plusieurs règles de combinaison permettent de déterminer de quelle manière sont renseignées les valeurs du champ en sortie.

  • Premier : utilisez la première valeur des champs en entrée.
  • Dernier : utilisez la dernière valeur des champs en entrée.
  • Joindre : concaténez (joignez) les valeurs des champs en entrée.
  • Somme : calculez le total des valeurs des champs en entrée.
  • Moyenne : calculez la moyenne des valeurs des champs en entrée.
  • Médiane : calculez la valeur médiane (milieu) des valeurs des champs en entrée.
  • Mode – Utilisez la valeur avec la plus haute fréquence.
  • Min. : utilisez la valeur minimale de toutes les valeurs des champs en entrée.
  • Max. : utilisez la valeur maximale de toutes les valeurs des champs en entrée.
  • Écart type : utilisez la méthode de classification par écart type sur les valeurs de tous les champs en entrée.
  • Total – Recherchez le nombre d'enregistrements inclus dans le calcul.

Field Mappings

Sortie obtenue

ÉtiquetteExplicationType de données
Table en entrée mise à jour

Jeu de données en entrée mis à jour.

Table View; Raster Layer; Mosaic Layer

arcpy.management.JoinField(in_data, in_field, join_table, join_field, {fields}, {fm_option}, {field_mapping})
NomExplicationType de données
in_data

Table ou classe d’entités à laquelle la table de jointure sera jointe.

Mosaic Layer; Raster Layer; Table View
in_field

Champ de la table en entrée sur lequel la jointure sera basée.

Field
join_table

Table à joindre à la table en entrée.

Mosaic 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
fields
[fields,...]
(Facultatif)

Champs de la table de jointure à transférer vers la table en entrée, selon une jointure entre la table en entrée et la table de jointure.

Field
fm_option
(Facultatif)

Spécifie comment les champs de jointure et les types de champ sont transférés vers la sortie.

  • NOT_USE_FMLes champs et les types de champ de la table jointe sont transférés vers la sortie. Il s’agit de l’option par défaut.
  • USE_FMLe transfert des champs et des types de champ de la table jointe vers la sortie est contrôlé par le paramètre field_mapping.
String
field_mapping
(Facultatif)

Les champs attributaires qui figurent dans la sortie avec les propriétés de champ correspondantes et les champs source. Par défaut, tous les champs des entrées seront inclus.

Il est possible d’ajouter, de supprimer, de renommer, de réorganiser les champs, ainsi que de modifier leurs propriétés.

Les règles de combinaison permettent de spécifier la manière dont les valeurs de deux champs en entrée ou plus sont combinées ou fusionnées en une seule valeur en sortie. Plusieurs règles de combinaison permettent de déterminer de quelle manière sont renseignées les valeurs du champ en sortie.

  • Premier : utilisez la première valeur des champs en entrée.
  • Dernier : utilisez la dernière valeur des champs en entrée.
  • Joindre : concaténez (joignez) les valeurs des champs en entrée.
  • Somme : calculez le total des valeurs des champs en entrée.
  • Moyenne : calculez la moyenne des valeurs des champs en entrée.
  • Médiane : calculez la valeur médiane (milieu) des valeurs des champs en entrée.
  • Mode – Utilisez la valeur avec la plus haute fréquence.
  • Min. : utilisez la valeur minimale de toutes les valeurs des champs en entrée.
  • Max. : utilisez la valeur maximale de toutes les valeurs des champs en entrée.
  • Écart type : utilisez la méthode de classification par écart type sur les valeurs de tous les champs en entrée.
  • Total – Recherchez le nombre d'enregistrements inclus dans le calcul.

Dans Python, vous pouvez utiliser la classe FieldMappings pour définir ce paramètre.

Field Mappings

Sortie obtenue

NomExplicationType de données
out_layer_or_view

Jeu de données en entrée mis à jour.

Table View; Raster Layer; Mosaic Layer

Exemple de code

Exemple 1 d’utilisation de la fonction JoinField (fenêtre Python)

Le script ci-dessous pour la fenêtre Python illustre l’utilisation de la fonction JoinField en mode immédiat.

import arcpy
arcpy.env.workspace = "C:/data/data.gdb"
arcpy.management.JoinField("zion_park", "zonecode", "zion_zoning", "zonecode", 
                           ["land_use", "land_cover"])
Exemple 2 d’utilisation de la fonction JoinField (script autonome)

Ce script Python autonome illustre l’utilisation de la fonction JoinField pour joindre une table à une classe d’entités en n’incluant que deux des champs de la table dans la jointure.

# 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.management.JoinField(inFeatures, joinField, joinTable, joinField, 
                           fieldList)

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes