Lier vos données

Il est souvent nécessaire de combiner des données provenant de plusieurs emplacements (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 tables.

Comparatif entre relations et 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 des informations. Les relations permettent également d’effectuer des jointures contextuelles feuille par feuille, ce qui renforce la flexibilité de chaque source de données. Les relations sont la méthode recommandée pour combiner les données dans la plupart des cas. Pour plus d’informations, consultez Différences entre relations et jointures.

Toutefois, dans certains cas, vous souhaiterez établir directement une jointure, soit pour le contrôle, soit pour certains aspects souhaités d’une jointure par rapport à une relation, comme le filtrage délibéré ou la duplication.

Remarque : les relations finissent par tirer parti des jointures (en coulisses). Par exemple, une relation entre les sources de données produira une jointure entre bases de données lorsque la visualisation utilise des champs à partir de tables dans différentes sources de données. De ce fait, il peut être pertinent d’Améliorer les performances des jointures entre bases de données.

Problèmes courants

  • Pour afficher, modifier ou créer des jointures, vous devez ouvrir une table logique dans l’espace de travail des relations (la zone qui s’affiche lorsque vous ouvrez ou créez une source de données pour la première fois) et accéder à l’espace de travail des jointures.
  • Les sources de données Tableau publiées ne peuvent pas être utilisées dans des jointures. Pour combiner les sources de données publiées, vous devez modifier les sources de données d’origine de manière à contenir la jointure de manière native ou utiliser la fusion des données.
  • Lorsque vous liez des tables, les champs que vous liez doivent être du même type de données. Si vous modifiez le type de données après avoir lié les tables, la jointure sera interrompue.
  • Il n’est pas possible de supprimer des champs utilisés dans la clause de jointure sans casser la jointure. Pour lier les données et être en mesure de nettoyer les champs en double, utilisez Tableau Prep Builder au lieu de Desktop.

Conseil : bien que Tableau Desktop ait la capacité de créer des jointures et de procéder à une mise en forme de base des données, Tableau Prep Builder est conçu pour la préparation des données. Si vous avez besoin d’effectuer plusieurs jointures, de nettoyer les noms de champ, de modifier les types de données, d’exécuter plusieurs permutations, ou d’autres types de préparation de données concernés, envisagez d’utiliser Tableau Prep Builder(Le lien s’ouvre dans une nouvelle fenêtre).

Créer une jointure

  1. Pour créer une jointure, connectez-vous à la source ou aux sources de données pertinentes. Consultez Vous connecter à vos données.

    Ceux-ci peuvent se trouver dans la même source de données (comme les tables d’une base de données ou des feuilles dans une feuille de calcul Excel) ou dans différentes sources de données (c’est ce qu’on appelle une jointure entre bases de données). Si vous avez combiné les tables à l'aide d'une jointure entre bases de données, Tableau colore les tables de l’espace de travail et les colonnes de la grille de données pour montrer de quelle connexion les données proviennent.

    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 les sources de données publiées, modifiez les sources de données d’origine pour contenir la jointure de manière native ou utilisez une fusion des données.

  2. Faites glisser la première table vers l’espace de travail.

    Notez que si vous faites glisser une deuxième table à ce stade, une relation se formera.

  3. Sélectionnez Ouvrir dans le menu ou double-cliquez sur la première table pour ouvrir l’espace de travail des jointures (couche physique).

    Double-cliquez sur une table dans l’espace de travail des relations pour ouvrir l’espace de travail des jointures.

  4. Double-cliquez sur une une autre table ou faites-la glisser vers l’espace de travail des jointures.

    Si votre table suivante provient d’une autre source de données entièrement, dans le volet gauche, sous Connexions, cliquez sur le bouton Ajouter ( dans la création Web) pour ajouter une nouvelle connexion à la source de données Tableau. Avec cette connexion sélectionnée, faites glisser la table désirée sur l’espace de travail des jointures.

  5. Cliquez sur l’icône de jointure pour configurer la jointure. Ajoutez une ou plusieurs conditions 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.

    Remarque : vous pouvez supprimer des clauses de jointure indésirables en cliquant sur l'icône « x » qui s'affiche lorsque vous survolez le côté droit de la clause.

  6. Une fois que vous avez fini, fermez la boîte de dialogue de jointure et l’espace de travail des jointures.

Une fois que vous avez créé une jointure, Lier vos données. Pour résoudre votre problème de jointure, consultez Lier vos données.

Anatomie d’une jointure

Les jointures sont définies par leur type ainsi que par la clause de jointure.

Types de jointure

En général, vous avez le choix entre quatre types de jointures possibles pour combiner vos données dans Tableau : interne, gauche, droite et externe complète. Si vous n’êtes pas sûr du type de jointure que vous souhaitez utiliser pour combiner les données issues de plusieurs tables, vous devriez utiliser des relations.

Type de jointure Résultat

Interne

Lorsque vous utilisez une jointure interne pour combiner des tables, le résultat est une table qui contient des valeurs ayant des correspondances dans les deux tables.

Lorsqu’une valeur ne correspond pas entre les deux tables, elle est complètement 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 gauche et les correspondances issues de la table droite.

Lorsqu'une valeur de la table gauche n'a pas de correspondance dans la table droite, vous voyez une valeur null dans la grille de données.

Droite

Lorsque vous utilisez une jointure droite pour combiner des tables, le résultat est une table qui contient toutes les valeurs de la table droite et les correspondances issues de la table gauche.

Lorsqu'une valeur de la table droite n'a pas de correspondance dans la table gauche, vous voyez une valeur null dans la grille de données.

Externe entière

Lorsque vous utilisez une jointure externe entière pour combiner des tables, le résultat est une table qui contient toutes les valeurs des deux tables.

Lorsqu'une valeur de l'une des tables n'a pas de correspondance dans l'autre table, vous voyez une valeur null dans la grille de données.

Union

Bien qu'elle ne soit pas un type de jointure, l'union constitue une autre méthode de combinaison de deux tables ou plus en ajoutant des lignes de données depuis une table vers une autre. Idéalement, les tables que vous unifiez doivent comporter le même nombre de champs, et ces champs doivent avoir des noms et des types de données correspondants. Pour plus d'informations sur l'union, consultez Réunir 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, ceci est probablement dû à une contrainte de votre source de données.

Clauses de jointure

Vous effectuez une jointure en configurant une ou plusieurs clauses d’adhésion. La clause de jointure indique à Tableau quels champs sont partagés entre les tables et comment associer les lignes correspondantes. Par exemple, les lignes qui ont le même ID sont alignées dans la table des résultats.

Les clauses de jointure utilisent le plus souvent l’opérateur d’égalité (=) qui associe les lignes contenant les mêmes valeurs. Il est également possible d’effectuer des jointures de type « non égal à », par exemple « inférieur à » (<) et « non égal à » (<>).

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 n’effectuer la jointure que si « Prénom = Prénom » et « Nom = Nom ». Les deux conditions devront être vraies pour que les lignes soient liées. Alternativement, si l’objectif était de retourner les résultats lorsque le nom est partagé, mais pas le prénom, les clauses de jointure peuvent être « Prénom <> Prénom » et « Nom = Nom ».

Les clauses de jointure peuvent également contenir des calculs. Par exemple, la clause de jointure peut être la concaténation de champs de noms « [Prénom] + [Nom] = [Prénom] + [Nom] ». Notez que les connexions de source de données ne prennent pas toutes en charge les calculs dans les clauses de jointure.

À propos des valeurs null dans les clés de jointure

En général, les jointure sont effectuées au niveau de la base de données. Si les champs utilisés pour lier des tables contiennent des valeurs null, la plupart des bases de données renvoient des données sans les lignes contenant les valeurs null. Toutefois, pour certaines sources de données à connexion unique, Tableau fournit une option supplémentaire permettant de lier des champs contenant des valeurs null à d'autres champs contenant également des valeurs null.

Après avoir configuré votre source de données, sélectionnez Données > Lier des valeurs Null à des valeurs Null dans la page Source de données.

Si l’option s’affiche en grisé, elle n’est pas disponible pour votre source de données. Notez que si vous ajoutez une seconde connexion à une source de données qui utilise cette option, la jointure revient au comportement par défaut qui consiste à exclure les lignes comportant des valeurs null.

Jointures entre bases de données

Tableau permet d’effectuer des jointures à partir de tables dans différentes sources de données, mais avec certaines limitations du côté de la base de données sur laquelle les plates-formes sont compatibles. Les jointure entre bases de données exigent une source de données multiconnexion, c’est-à-dire que vous créez une nouvelle connexion à chaque base de données avant de lier les tables.

  1. Une fois que vous vous êtes connecté à la première source de données, utilisez l’option Ajouter dans le volet Données pour ajouter une autre connexion.

    Remarque : si le connecteur souhaité n'est pas disponible dans la liste Connexion lorsque vous tentez d’ajouter une autre connexion, cela signifie que les jointures entre bases de données ne sont pas prises en charge pour la combinaison de sources que vous voulez lier. Cela concerne les connexions aux données de type cube (par exemple Microsoft Analysis Services), la plupart des données de type extrait seulement (par exemple Google Analytics et OData), ainsi que les sources de données Tableau Server publiées.

  2. Cela crée une deuxième connexion plutôt qu’une source de données entièrement différente. Vous pouvez basculer entre deux (ou plusieurs) connexions depuis l’onglet Source de données.

  3. Une fois que vous passez à une feuille de travail et commencez l’analyse, la source de données fonctionne comme une source de données unique et combinée. Il en va différemment avec les deux sources de données indépendantes sur lesquelles vous pouvez basculer dans une feuille de travail.

    La source de données Book+ contient deux connexions avec une jointure entre bases de données. Elle fonctionne comme une source de données unique. La source de données Movie adaptations est une source de données indépendante.

Remarque : en règle générale, lier des tables provenant de la même base de données offre de meilleures performances. En effet, l'interrogation des données stockées dans la même base de données demande moins de temps et utilise les capacités natives de la base de données pour effectuer la jointure. Pour plus d'informations sur les performances des jointures entre bases de données, consultez Améliorer les performances des jointures entre bases de données.

 

Autres articles de cette section

Merci de vos commentaires !