Joignez vos Données
Il est souvent nécessaire de combiner des données provenant de plusieurs endroits — différentes tables ou même sources de données — pour effectuer une analyse souhaitée. Selon la structure des données et les besoins de l’analyse, il existe plusieurs façons de combiner les tableaux.
Relations vs Jointures
La méthode par défaut dans Tableau Desktop consiste à utiliser des relations. Les relations préservent le niveau de détail des tables d’origine lors de la combinaison d’informations. Les relations permettent également d’effectuer des jointures basées sur le contexte feuille par feuille, ce qui rend chaque source de données plus flexible. Les relations sont la méthode recommandée pour combiner les données dans la plupart des cas. Pour plus d’informations, voir Comment les Relations diffèrent des Jointures.
Cependant, il peut arriver que vous souhaitiez établir directement une jointure, soit pour le contrôle, soit pour les aspects souhaités d’une jointure par rapport à une relation, tels que le filtrage délibéré ou la duplication.
Remarque: Les relations finissent par tirer parti des jointures (juste en coulisses). Par exemple, une relation entre sources de données produira une jointure entre bases de données lorsque la visualisation utilise des champs de tables de différentes sources de données. En tant que tel, Améliorer les performances des jointures entre bases de données peut être pertinent.
Problèmes courants
- Pour afficher, modifier ou créer des jointures, vous devez ouvrir une table logique dans le canevas des relations — la zone que vous voyez lors de la première ouverture ou création d’une source de données — et accéder au canevas des jointures.
- Les sources de données Tableau publiées ne peuvent pas être utilisées dans les jointures. Pour combiner des sources de données publiées, vous devez modifier les sources de données d’origine pour contenir nativement la jointure ou utiliser un mélange de données.
- Lorsque vous joignez des tables, les champs sur lesquels vous joignez doivent être du même type de données. Si vous modifiez le type de données après avoir rejoint les tables, la jointure sera interrompue. Les champs
- utilisés dans la clause join ne peuvent pas être supprimés sans casser la jointure. Pour joindre des données et pouvoir nettoyer les champs en double, utilisez Tableau Prep Builder au lieu de Desktop
Astuce: Alors que Tableau Desktop a la capacité de créer des jointures et de mettre en forme des données de base, Tableau Prep Builder est conçu pour la préparation des données. Si vous devez effectuer plusieurs jointures, nettoyer les noms de champs, modifier les types de données, effectuer plusieurs pivots ou d’autres types de préparation de données, envisagez d’utiliser Tableau Prep Builder (le lien s’ouvre dans une nouvelle fenêtre).
Créer une jointure
-
Pour créer une jointure, connectez-vous à la ou aux sources de données pertinentes. Voir Se connecter à vos données.
Ceux-ci peuvent être dans la même source de données (comme des tables dans une base de données ou des feuilles dans une feuille de calcul Excel) ou des sources de données différentes (c’est ce qu’on appelle une jointure entre bases de données). Si vous combinez des tables à l’aide d’une jointure entre bases de données, Tableau colore les tables dans le canevas et les colonnes de la grille de données pour vous montrer de quelle connexion proviennent les données.
Remarque : Toutes les sources de données ne prennent pas en charge les jointures entre bases de données, y compris les sources de données Tableau publiées. Pour combiner des sources de données publiées, modifiez les sources de données d’origine pour contenir nativement la jointure ou utilisez un mélange de données.
-
Faites glisser la première table vers le canevas.
Notez que si vous faites glisser une deuxième table à ce stade, une relation se formera.
-
Sélectionnez Ouvrir dans le menu ou double-cliquez sur la première table pour ouvrir le canevas de jointure (couche physique).
Un double-clic sur une table sur le canevas de relations ouvre le canevas de jointure
-
Double-cliquez ou faites glisser une autre table vers le canevas de jointure.
Si votre table suivante provient entièrement d’une autre source de données, dans le volet de gauche, sous Connexions, cliquez sur le bouton Ajouter ( dans Création Web) pour ajouter une nouvelle connexion à la source de données Tableau. Une fois cette connexion sélectionnée, faites glisser la table souhaitée vers le canevas de jointure.
-
Cliquez sur l’icône Rejoindre pour configurer la jointure. Ajoutez une ou plusieurs clauses de jointure en sélectionnant un champ dans l’une des tables disponibles utilisées dans la source de données, en choisissant un opérateur de jointure et un champ dans la table ajoutée.
Note: Vous pouvez supprimer une clause de jointure indésirable en cliquant sur le “x” qui s’affiche lorsque vous survolez le côté droit de la clause de jointure.
-
Lorsque vous avez terminé, fermez la boîte de dialogue Joindre et joindre le canevas.
Après avoir créé une jointure, Joignez vos données. Pour résoudre le problème de votre jointure, consultez Joindre vos données.
Anatomie d’une jointure
Les jointures sont définies par leur type ainsi que par la clause join.
Types de jointures
En général, il existe quatre types de jointures que vous pouvez utiliser dans Tableau : interne, gauche, droite et externe complète. Si vous ne savez pas quel type de jointure vous souhaitez utiliser pour combiner les données de plusieurs tables, vous devez utiliser des relations.
Type de jointure | Résultat |
Intérieur
|
Lorsque vous utilisez une jointure interne pour combiner des tables, le résultat est une table qui contient des valeurs qui ont des correspondances dans les deux tables. Lorsqu’une valeur ne correspond pas aux deux tables, elle est entièrement supprimée. |
Gauche
|
Lorsque vous utilisez une jointure gauche pour combiner des tables, le résultat est une table qui contient toutes les valeurs de la table de gauche et les correspondances correspondantes de la table de droite. Lorsqu’une valeur de la table de gauche n’a pas de correspondance correspondante dans la table de droite, vous voyez une valeur nulle dans la grille de données. |
Droit
|
Lorsque vous utilisez une jointure droite pour combiner des tables, le résultat est une table qui contient toutes les valeurs de la table de droite et les correspondances correspondantes de la table de gauche. Lorsqu’une valeur de la table de droite n’a pas de correspondance correspondante dans la table de gauche, vous voyez une valeur nulle dans la grille de données. |
Plein extérieur
|
Lorsque vous utilisez une jointure externe complète pour combiner des tables, le résultat est une table qui contient toutes les valeurs des deux tables. Lorsqu’une valeur de l’une ou l’autre table ne correspond pas à l’autre table, vous voyez une valeur nulle dans la grille de données. |
Union
|
Bien que l’union ne soit pas un type de jointure, l’union est une autre méthode pour combiner deux tables ou plus en ajoutant des lignes de données d’une table à une autre. Idéalement, les tables que vous associez ont le même nombre de champs et ces champs ont des noms et des types de données correspondants. Pour plus d’informations sur union, consultez Union Vos données. |
Toutes les bases de données ne prennent pas en charge tous les types de jointure. Si une option n’est pas disponible dans la boîte de dialogue de jointure, cela est probablement dû à une contrainte de votre source de données.
Clauses de jointure
Une jointure est effectuée en configurant une ou plusieurs clauses de jointure. La clause join indique à Tableau quels champs sont partagés entre les tables et comment faire correspondre les lignes correspondantes. Par exemple, les lignes avec le même identifiant sont alignées dans le tableau des résultats.
Les clauses de jointure utilisent le plus souvent l’opérateur d’égalité (=) qui fait correspondre les lignes avec les mêmes valeurs. Il est également possible d’effectuer des jointures non équi, par exemple inférieures à (<) et non égales (< >).
Une jointure peut également avoir plusieurs clauses de jointure. Par exemple, si le prénom et le nom sont stockés dans des colonnes séparées, il peut être avantageux de ne se joindre que si “Prénom = prénom” et “Nom = nom”. Les deux conditions devront être vraies pour que les lignes soient jointes. Alternativement, si l’objectif était de renvoyer des résultats lorsque le nom de famille est partagé mais que le prénom ne l’est pas, les clauses de jointure pourraient être “Prénom < > Prénom” et “Nom = Nom de famille”.
Les clauses de jointure peuvent également contenir des calculs. Par exemple, la clause join peut être la concaténation des champs de nom “+=+”. Notez que toutes les connexions de source de données ne prennent pas en charge les calculs dans les clauses de jointure.
À propos des valeurs nulles dans les clés de jointure
En général, les jointures sont effectuées au niveau de la base de données. Si les champs utilisés pour joindre les tables contiennent des valeurs nulles, la plupart des bases de données renvoient des données sans les lignes contenant les valeurs nulles. Cependant, pour certaines sources de données à connexion unique, Tableau fournit une option supplémentaire pour vous permettre de joindre des champs contenant des valeurs nulles à d’autres champs contenant des valeurs nulles.
Après avoir configuré votre source de données, sur la page Source de données, sélectionnez Data > Join null values to null values.
Si l’option est grisée, elle n’est pas disponible pour votre source de données. Notez que si vous ajoutez une deuxième connexion à une source de données qui utilise cette option, la jointure revient au comportement par défaut d’exclusion des lignes avec des valeurs nulles.
Jointures entre bases de données
Tableau permet les jointures à partir de tables de différentes sources de données, mais avec certaines limitations du côté de la base de données sur lesquelles les plates-formes sont compatibles. Les jointures entre bases de données nécessitent une source de données à connexions multiples— c’est-à-dire que vous créez une nouvelle connexion à chaque base de données avant de rejoindre les tables.
- Une fois connecté à la première source de données, utilisez l’option Ajouter dans le volet Données pour ajouter une autre connexion.
Note: Si le connecteur souhaité n’est pas disponible dans la liste de connexion lorsque vous essayez d’ajouter une autre connexion, les jointures entre bases de données ne sont pas prises en charge pour la combinaison de sources que vous souhaitez joindre. Cela inclut les connexions aux données cube (par exemple, Microsoft Analysis Services), la plupart des données extraites uniquement (par exemple, Google Analytics et OData) et les sources de données Tableau Server publiées.
- Cela crée une deuxième connexion plutôt qu’une source de données entièrement différente. Vous pouvez basculer entre les deux connexions (ou plus) dans l’onglet Source de données.
- Une fois que vous passez à une feuille de calcul et que vous commencez l’analyse, la source de données fonctionne comme une source de données unique et combinée. Cela contraste avec deux sources de données indépendantes qui peuvent être basculées sur une feuille de calcul.
La source de données Book+ contient deux connexions avec une jointure entre bases de données. Il fonctionne comme une source de données unique. La source de données sur les adaptations cinématographiques est une source de données indépendante.
Remarque : En règle générale, joindre des tables à partir de la même base de données donne de meilleures performances. En effet, l’interrogation des données stockées sur la même base de données prend moins de temps et exploite les capacités natives de la base de données pour effectuer la jointure. Pour plus d’informations sur les performances de jointure entre bases de données, consultez Améliorer les performances des jointures entre bases de données.