Version 2021
Combiner des données dans des tableaux avec des jointures dans Google BigQuery
Vous pouvez combiner les données de deux tables en créant une jointure entre les tables.
Une table contient les colonnes City (Ville) et Revenue (Chiffre d’affaires). Une deuxième table contient les colonnes City (Ville) et Profit. Associez les données dans les deux tables en créant une jointure entre les colonnes City (Ville).
Pour combiner les données de trois tables ou davantage, créez une jointure entre deux des tables, puis créez une jointure entre l’une de ces deux tables et une troisième table, etc., jusqu’à ce que toutes les tables soient reliées.
La syntaxe de la clause JOIN que vous écrivez est liée à la taille des tables que vous reliez. Il est utile de savoir avant de créer une jointure si les tables contiennent plus de 8 Mo de données compressées, car cette taille est le maximum autorisé par BigQuery pour relier des tables avec la clause JOIN par défaut. En général, les tables de recherche ne contiennent pas plus de 8 Mo de données compressées. Les tables de faits sont plus susceptibles de contenir plus de 8 Mo de données compressées.
Pour créer une jointure qui combine des données dans deux tables
- Vous pouvez créer une jointure qui combine les données en deux tables dans la boîte de dialogue Importer à partir des tables pendant la création d’une requête pour l’importation de vos données.
- Si une table contient plus de 8 Mo de données compressées mais pas l’autre, faites glisser la colonne de la table la plus grande vers le nom de colonne correspondant dans la table la plus petite. Ceci crée une jointure interne. Une ligne représentant la jointure s’affiche dans le volet Générateur de requêtes, s’exécutant de la première colonne à la deuxième. Passez à l’étape 6.
- Si les deux tables contiennent plus de 8 Mo de données compressées ou si les deux tables contiennent moins de 8 Mo de données compressées, faites glisser le nom de la colonne d'une table vers la colonne d'une autre table. Ceci crée une jointure interne. Une ligne représentant la jointure s’affiche dans le volet Générateur de requêtes, s’exécutant de la première colonne à la deuxième. Si les tables que vous avez jointes contiennent plus de 8 Mo de données compressées, passez à l'étape 8. Sinon, Passez à l’étape 6.
- Si vous ne connaissez pas la taille des tables que vous joignez, faites glisser le nom de la colonne d’une première table vers le nom de la colonne correspondante dans la deuxième table.
-
Cliquez sur Exécuter SQL pour tester si la jointure est valide.
Si un aperçu de vos données s’affiche dans le volet Exemple d’aperçu, la jointure est valide et a été créée avec succès. La seconde table que vous avez reliée contient moins de 8 Mo de données compressées. Passez à l’étape 6.
Si une erreur apparaît indiquant que le
JOIN
La table de droite de l'opérateur est petite, alors la deuxième table que vous avez jointe est trop grande pour créer la jointure. Cliquez sur la jointure et choisissez Supprimer. Créez une nouvelle jointure en faisant glisser le nom de la colonne de la deuxième table vers le nom de colonne correspondant dans la première table. Cliquez sur Exécuter SQL.Si un aperçu de vos données s’affiche dans le volet Exemple d’aperçu, la jointure a été créée avec succès. Passez à l’étape 6.
Si le message d’erreur s’affiche une seconde fois, les deux tables contiennent plus de 8 Mo de données compressées. Passez à l'étape 8 pour modifier la requête SQL pour importer vos données.
-
Une fois que vous avez créé une jointure, vous pouvez modifier son type ou la supprimer. Cliquez sur la ligne représentant la jointure.
Google BigQuery ne prend pas en charge les autres types de jointure, tels qu’une jointure externe complète ou une jointure externe à droite. En outre, Google BigQuery utilise l’opérateur égal (=) par défaut pour comparer les colonnes et ne prend pas en charge les autres opérateurs.
-
Sélectionnez Jointure interne pour uniquement inclure les enregistrements dans lesquels les colonnes reliées des deux tables répondent à la condition de jointure.
- Sélectionnez Jointure externe à gauche (par défaut) pour inclure tous les enregistrements de la colonne de la première table et seulement ceux de la deuxième table qui répondent à la condition de jointure.
- Sélectionnez Supprimer pour supprimer la jointure.
- Vous créez une jointure pour des tables contenant plus de 8 Mo de données compressées. Par conséquent, vous devrez modifier la requête. Avant de procéder, ajoutez les colonnes supplémentaires que vous souhaitez importer. Créez des filtres, des agrégations ou des expressions basées sur les colonnes que vous exportez.
-
Cliquez sur Éditer SQL. Le SQL pour l’importation de vos données s’affiche dans le volet Générateur de requêtes.
-
Après le mot,
JOIN
, taperEACH
. -
Continuez à importer vos données ou à personnaliser votre requête.