Jonction de tables
La jonction de tables vous permet de combiner deux tables Analytics pourvues de structures d'enregistrement différentes dans une troisième table nouvelle. Vous pouvez sélectionner toute combinaison de champs des deux tables d'origine à inclure dans la nouvelle.
Les structures d'enregistrement sont différentes si elles possèdent un ou plusieurs champs (éléments de données) qui diffèrent. La jonction constitue un bon choix pour mener des recherches qui nécessitent un ensemble de données joint en permanence comme point de départ des analyses.
Exemple
Scénario
Vous voulez identifier les fournisseurs qui sont également des employé via une seule méthode d'analyse des données afin de trouver d'éventuels paiements incorrects.
Approche
Vous joignez la table de base Fournisseur à celle Employé grâce au champ clé commun Adresse.
La table de sortie jointe contient les fournisseurs et les employés qui ont la même adresse.
Remarque
Pour de plus amples informations sur la jointure de tables dans la fenêtre Accès aux données dans le cadre du processus d'importation de données, consultez la section Joindre des tables dans la fenêtre Accès aux données.
Cette rubrique traite de la jonction de tables Analytics une fois qu'elles se trouvent dans Analytics.
Joindre des tables à l'aide d'un champ clé commun
Vous joignez les tables à l'aide d'un champ clé commun, c'est-à-dire un élément de données tel qu'un numéro d'employé, un ID fournisseur ou un adresse qui apparaît dans les deux tables. Si des valeurs identiques existent dans les deux champs clés, le résultat est une correspondance qui joint les enregistrements individuels des tables distinctes.
Dans l'exemple ci-dessous, une table maître fournisseurs et une table maître employés sont jointes à l'aide du champ adresse dans chaque table comme clé commune (Rue_Fournisseur et Adresse_Emp). La table de sortie contient deux enregistrements joints. Dans l'exemple, les enregistrements non joints de chaque table sont également inclus dans la table de sortie, une option que vous pouvez sélectionner.
Joindre des tables à l'aide de valeurs de champs clés similaires ou quasi-identiques
Une jointure approximative Analytics utilise la jointure approximative des valeurs de champs clés pour combiner deux tables Analytics dans une nouvelle troisième table. À tous les égards, une jointure approximative ressemble à une jointure Analytics ordinaire. La principale différence, c'est qu'en plus de joindre des enregistrements à partir de la correspondance exacte des valeurs de champs clés, une jointure approximative peut joindre des enregistrements à partir d'une correspondance approximative.
Pour plus d'informations, consultez la section Jointure approximative.
Conditions des champs clés
Plusieurs conditions s'appliquent aux champs clés dans les tables que vous joignez.
Caractéristique des champs clés | Condition préalable |
---|---|
Élément de données | Doivent être identiques. Par exemple, les deux champs clés sont des champs de numéros d'employés. |
Type de données |
Il peut s'agir de n'importe quel type de données, mais les champs clés doivent tous être du même type de données. Par exemple, deux champs de type caractère. L'exception est la jointure de type de données caractère-numérique et numérique-caractère qu'Analytics harmonise automatiquement. Pour plus d'informations, consultez la section Harmonisation automatique lors de la jonction de tables. Les sous-types DateHeure (date, DateHeure et heure) peuvent uniquement être joints au même sous-type. |
Type de champ | Il peut s'agir de champs physiques ou de champs calculés. |
Nom de champ | Peuvent être différents. |
Position de départ | Peuvent être différents. |
Longueur de champ |
|
Justification et casse des champs de type caractère | Doivent être identiques. |
Tables et champs clés primaires et secondaires
Les tables et champs clés de l'opération de jonction sont désignés primaire et secondaire en fonction de l'ordre d'ouverture des tables :
- table primaire la première table que vous ouvrez
- champ clé primaire le champ clé choisi dans la table primaire
- table secondaire la deuxième table que vous ouvrez
L'ouverture d'une table secondaire entraîne son association à une table principale et sa disponibilité pour le traitement. Les tables secondaires ne s'ouvrent pas dans l'onglet Vue.
- champ clé secondaire le champ clé choisi dans la table secondaire
Vous êtes libre de choisir les tables et champs clés primaire et secondaire que vous souhaitez. Cependant, la jonction ne réussit que si les champs clés sont conformes aux Conditions des champs clés.
Pour plus d'informations, consultez la section À propos des champs clés.
Enregistrements correspondants et non correspondants
Lorsque vous travaillez avec les jonctions, vous devez tenir compte à la fois des enregistrements correspondants et non correspondants :
- Enregistrements correspondants les enregistrements primaires et secondaires sont mis en correspondance s'ils comportent des valeurs de champs clés primaires et secondaires identiques.
Remarque
Selon le type de jonction que vous sélectionnez, les doublons des valeurs clés secondaires correspondantes peuvent être laissés sans jointure. Pour plus d'informations, consultez la section Pourquoi certains enregistrements de la table secondaire sont-ils manquants dans la table de sortie jointe ?
- Enregistrements sans correspondance les enregistrements primaires et secondaires ne sont pas mis en correspondance s'ils ne comportent aucune valeur de champs clés primaires et secondaires identiques.
Quels enregistrements sont inclus dans la table jointe ?
Les valeurs de champs clés correspondantes et non correspondantes et le type de jonction que vous effectuez déterminent les enregistrements des deux tables d'origine qui sont inclus dans la nouvelle table jointe.
Types de jointures
Analytics prend en charge six différents types de jointures, présentées ci-dessous. Pour obtenir des exemples spécifiques, consultez la section Exemples de types de jointures.
Type de jointure | Enregistrements inclus dans la table jointe | |||
---|---|---|---|---|
Enregistrements primaires correspondants | Enregistrements primaires non correspondants | Enregistrements secondaires correspondants | Enregistrements secondaires non correspondants | |
Primaires et secondaires correspondants (1re correspondance secondaire)
|
|
|
Non inclus : doublons des valeurs clés secondaires correspondantes |
|
Primaires et secondaires correspondants (toutes les correspondances secondaires)
|
|
|
Inclus et joints : doublons des valeurs clés secondaires correspondantes |
|
Primaires non correspondants
|
|
|
|
|
Tous les primaires et tous les secondaires correspondants
|
|
|
Non inclus : doublons des valeurs clés secondaires correspondantes |
|
Tous les secondaires et tous les primaires correspondants
|
|
|
Inclus mais non joints : doublons des valeurs clés secondaires correspondantes |
Inclus : doublons des valeurs clés secondaires non correspondantes |
Tous les primaires et secondaires
|
|
|
Inclus mais non joints : doublons des valeurs clés secondaires correspondantes |
Inclus : doublons des valeurs clés secondaires non correspondantes |
Pourquoi certains enregistrements de la table secondaire sont-ils manquants dans la table de sortie jointe ?
Cinq des six types de jointure Analytics ne joignent pas les occurrences en doublon des valeurs clés secondaires correspondantes. Les occurrences en doublon des valeurs de clé primaire correspondante sont toutes jointes avec la première occurrence de la valeur de clé secondaire correspondante. Ces types de jointures sont largement connus sous le nom de jointures de type plusieurs-à-un.
Pour joindre toutes les valeurs clés secondaires correspondantes, effectuez l'une des opérations suivantes :
- Inverser les tables Dans la jointure, inversez les tables primaire et secondaire. Cette méthode est appropriée si les valeurs dans le champ clé de la table primaire d'origine sont uniques. S'il y a des valeurs clés primaires en doublon dans les deux tables, cette méthode peut ne pas produire les résultats que vous souhaitez.
- Utiliser une jointure plusieurs à plusieurs Utilisez le type de jointure Primaires et secondaires correspondants (toutes les correspondances secondaires).
Jointures plusieurs-à-un et plusieurs-à-plusieurs
Vous pouvez voir que certaines jointures Analytics sont nommées jointures plusieurs-à-un et qu'un des six types de jointure s'appelle la jointure plusieurs-à-plusieurs. Ces termes sont utiles pour décrire de manière générale le comportement des jointures Analytics. Cependant, ces termes sont des généralisations, et ne représentent pas entièrement le comportement des jointures.
Jointures Analytics de type plusieurs-à-un
À une exception, les types de jointure mises à votre disposition dans Analytics sont de type plusieurs-à-un. Ils fonctionnent également en tant que jointures Un-à-un si toutes les valeurs du champ clé primaire sont uniques.
Dans une jointure Analytics de type plusieurs-à-un :
- joint les occurrences en doublon d'une valeur de clé primaire correspondante sont toutes jointes avec la première occurrence de la valeur de clé secondaire correspondante
Les correspondances de clé primaire en double ainsi que la première correspondance de clé secondaire sont comprises dans la table jointe.
- non joint les doublons des valeurs clés secondaires correspondantes sont laissées sans jointure
Les correspondances de clé secondaire en doublon sont exclues de la table de sortie jointe sauf si vous sélectionnez un type de jointure qui comprend tous les enregistrements secondaires. Si vous incluez tous les enregistrements secondaires, les correspondances de clé secondaires en doublon apparaissent dans la table de sortie jointe sous forme d'enregistrements sans jointure.
Jointure plusieurs-à-un
Dans l'exemple ci-dessous, les deux occurrences de la valeur de clé primaire 'C' sont jointes dans la table de sortie, mais seule la première occurrence de la valeur de clé secondaire 'C' est jointe.
Astuce
Si les valeurs des champs clés sont uniques dans l'une des tables que vous joignez, faites de cette table la table secondaire. Par exemple, si vous joignez une table de transactions avec une table maîtresse, faites de la table maîtresse la table secondaire.
Structurer la jointure de cette manière permet de s'assurer que tous les enregistrements correspondants sont joints et inclus dans la table de sortie.
Jointure Analytics de type plusieurs-à-plusieurs
Un type de jointure Analytics : Primaires et secondaires correspondants (tous les enregistrements secondaires correspondants) : inclut tous les enregistrements primaires et secondaires correspondants. Ce type de jointure est aussi connu sous le nom de jointure plusieurs-à-plusieurs.
La jointure plusieurs-à-plusieurs fonctionne également en tant que jointure un-à-plusieurs si toutes les valeurs du champ clé primaire sont uniques.
Dans une jointure Analytics de type plusieurs-à-plusieurs :
- joint toutes les occurrences d'une valeur de clé primaire correspondante sont jointes avec toutes les occurrences de la valeur de clé secondaire correspondante
Les correspondances de clé primaire en double ainsi que les correspondances de clé secondaire en double sont toutes jointes et comprises dans la table de sortie.
- non joint aucune occurrence en double d'une valeur de clé secondaire correspondante ne reste sans jointure
Jointure plusieurs-à-plusieurs
Dans l'exemple ci-dessous, les deux occurrences de la valeur de clé primaire 'C' sont jointes dans la table de sortie et les deux occurrences de la valeur de clé secondaire 'C' sont aussi jointes.
Astuce
Si vous ne savez pas si des correspondances en doublon existent dans la clé secondaire, choisissez le type de jointure plusieurs-à-plusieurs. Cela vous assure que vous n'excluez pas les enregistrements qui doivent être joints.
Si vous avez l'intention d'exclure les correspondances des clés secondaires en doublons, ne choisissez pas le type de jointure plusieurs-à-plusieurs.
Différence entre les jointures Analytics et les jointures SQL
Il existe une différence importante entre les jointures Analytics que vous réalisez via la boîte de dialogue Joindre et les jointures SQL disponibles au moment de l'importation des données dans Analytics via la fenêtre Accès aux données :
- Jointures Analytics les valeurs correspondantes de clés secondaires en double (à l'exception de la jointure de type plusieurs-à-plusieurs) restent sans jointure
- Jointures SQL les valeurs de clés secondaires en double sont toutes jointes, quel que soit le type de jointure choisi
Pour plus d'informations sur les jointures SQL dans la fenêtre Accès aux données, consultez la section Joindre des tables dans la fenêtre Accès aux données.
Remarque
Analytics utilise le terme « jointure de type plusieurs-à-plusieurs » de manière unique dans Analytics. Cela est différent d'une jointure SQL de type plusieurs-à-plusieurs.
Tri de tables jointes
La table jointe combinée obtenue d'une opération de jonction est triée dans l'ordre croissant sur la base du champ clé primaire, en supposant que vous utilisiez l'option Prétrier sur le champ clé primaire tout en effectuant la jonction, ou la table primaire utilise déjà cet ordre de tri.
Si vous ne triez ou ne prétriez pas en fonction du champ clé primaire, la table jointe obtenue utilise l'ordre de tri existant de la table primaire.
Informations supplémentaires sur le tri et la jonction
- Il n'est pas obligatoire de trier la table primaire, mais la durée de traitement augmente sensiblement si la table primaire est intégralement non triée ou si elle est triée dans l'ordre décroissant.
- Si vous effectuez une jonction en utilisant un champ clé de table primaire triée partiellement, par exemple en procédant à une jonction sur la base du code de compte lorsque la table est triée par mois, puis par code de compte, l'augmentation de la durée de traitement n'est pas aussi importante.
- Lors de la jonction, l'option Prétrier existe aussi bien pour les tables primaires que pour les tables secondaires.
- Les champs clés primaires et secondaires peuvent être indexés plutôt que triés. Le champ clé secondaire doit être indexé dans l'ordre croissant. Un index peut être appliqué à la table secondaire uniquement à partir de la ligne de commande ou d'un script.
Informations supplémentaires sur la jonction
Le tableau ci-dessous fournit des informations supplémentaires sur la jonction.
Domaine fonctionnel |
Détails |
---|---|
Enregistrements non correspondants et valeurs de champ manquantes |
Si vous insérez des enregistrements primaires ou secondaires non correspondants dans une jointure, pour les valeurs de champ manquantes, Analytics affiche un espace dans les champs caractère et DateHeure, un zéro dans les champs numériques et « F » dans les champs logiques. |
Doublons ou espaces dans un champ clé de table secondaire |
Si des doublons ou des valeurs manquantes d'un champ clé d'une table secondaire rendent toute analyse ultérieure non valide, le prétraitement de la table secondaire en vue de supprimer les doublons et/ou les espaces peut être une solution dans certains cas. |
Rapprochement partiel |
Le rapprochement partiel des valeurs des champs clés n'est pas pris en charge. Pour être rapprochées, les valeurs doivent être identiques à 100 %. Par exemple :
Remarque Le rapprochement partiel est pris en charge par la Jointure approximative Analytics. |
Longueur de champ clé identique non appliquée |
À l'exception des champs clés caractère, Analytics n'applique pas de longueurs identiques pour les champs clés primaires et secondaires lors de la jonction des tables. Il est recommandé de toujours utiliser des longueurs identiques pour les champs clés numériques, en harmonisant, si nécessaire, manuellement les longueurs avant d'effectuer la jonction. Les résultats qui dérivent de la jonction utilisant des champs clés numériques de différentes longueurs ne sont pas fiables. Les champs clés DateHeure peuvent avoir des longueurs différentes, car Analytics utilise un format de DateHeure Analytics normalisé lors d'opérations impliquant des dates, des DateHeures ou des heures. |
Harmonisation de la justification et de la casse |
Lorsque vous joignez des tables en utilisant des champs clés caractère, la justification et la casse doivent être identiques :
|
Nombre d'enregistrements non inclus dans une jointure |
En fonction du type de jointure que vous effectuez, les enregistrements des tables primaire et/ou secondaires peuvent ne pas être inclus dans la table jointe. La trace des commandes affiche le nombre d'enregistrements primaires non inclus (<n> enregistrements ignorés), mais pas le nombre des enregistrements secondaires ignorés. |
Expressions conditionnelles et options d'étendue utilisées dans une opération de jointure |
Dans les jointures de type plusieurs-à-un, les paramètres Si, Tant que, Premiers et Suivants qui limitent les enregistrements traités s'appliquent uniquement à la table primaire. Dans les jointures de type plusieurs-à-plusieurs, les expressions Si et Tant que peuvent également référencer la table secondaire. |
Noms de champ identiques dans les tables à joindre |
Si les champs clés primaires et secondaires ou d'autres champs inclus ont des noms identiques, Analytics ajoute « 2 » à la fin du nom du champ secondaire dans le format de la table de sortie. Par exemple, « ID_fournisseur » devient « ID_fournisseur2 » (ou ID_fournisseur3, etc. jusqu'à ce qu'Analytics trouve un nom qui ne soit pas en conflit avec d'autres noms de champ dans la table de sortie). Les autres titres des colonnes de la vue de la table de sortie continuent d'afficher les noms identiques non modifiés. |
Table non disponible en tant que table secondaire |
Une table ne peut pas être sélectionnée comme table secondaire dans une jointure si elle est actuellement associée à la table primaire/parent comme table enfant. Pour éviter cette restriction, vous pouvez créer une copie du format de table primaire/parent ou du format de table enfant et effectuer la jonction en utilisant le format copié. Vous pouvez également supprimer la relation. |
Restrictions sur l'emplacement des tables à joindre |
Pour que des tables puissent être jointes, elles doivent être dans le même projet Analytics. Les tables de serveur doivent être sur le même serveur et elles doivent être accessibles via le même profil de serveur. Vous ne pouvez pas joindre une table locale à une table de serveur. |
Taille d'une table jointe |
En fonction du type de jonction effectué, le nombre des enregistrements de la table combinée obtenue peut être égal, supérieur ou inférieur à la somme des enregistrements des deux tables jointes. |
Jointure de données UTC et non UTC |
Un champ clé DateHeure UTC et non UTC peut être utilisé pour joindre deux tables. (L'heure UTC est l'heure universelle coordonnée à zéro degré de longitude.) Lors de l'exécution d'opération impliquant des DateHeures ou des heures, Analytics utilise un format DateHeure Analytics interne pour que les deux valeurs DateHeure suivantes soient interprétées comme identiques et constituent une correspondance :
Il est recommandé de redoubler de prudence si vous mélangez des données d'heure UTC et non UTC dans une opération Analytics. Bien qu'Analytics établisse une correspondance entre les deux valeurs précédentes, il se peut qu'il n'y ait aucune logique, car une valeur fait référence à un fuseau horaire et l'autre non. Pour plus d’informations sur UTC, consultez la section Onglet Date et heure (boîte de dialogue Options). |