Accéder au contenu principal

Join

Le préfixe join permet de joindre la table chargée à une table nommée existante ou à la dernière table de données créée.

La jointure des données a pour effet d'ajouter au tableau cible un ensemble supplémentaire de champs ou d'attributs, à savoir ceux qui ne sont pas déjà présents dans le tableau cible. Tous les noms de champ communs entre l'ensemble de données source et le tableau cible sont utilisés pour déterminer comment associer les nouveaux enregistrements entrants. C'est ce qu'on appelle communément une « jointure naturelle ». Une opération de jointure Qlik peut réduire ou augmenter le nombre d'enregistrements de la table cible obtenue par rapport à la table de départ, suivant le caractère unique de l'association de jointure et le type de jointure utilisé.

Il existe quatre types de jointures :

Les jointures Left join (jointures à gauche) constituent le type de jointure le plus courant. Par exemple, si vous avez un ensemble de données de transaction et si vous souhaitez le combiner avec un ensemble de données de référence, vous utiliserez généralement une jointure Left Join. Vous devez d'abord charger la table de transactions, puis charger l'ensemble de données de référence tout en le joignant via un préfixe Left Join à la table de transactions déjà chargée. Une jointure Left Join conserverait toutes les transactions telles quelles et ajouterait les champs de données de référence supplémentaires lorsqu'une correspondance est trouvée.

Lorsque vous avez deux ensembles de données pour lesquels vous ne vous souciez que des résultats où il existe une association correspondante, envisagez d'utiliser une jointure Inner Join. Cela éliminera tous les enregistrements des données source chargées et de la table cible si aucune correspondance n'est trouvée. Par conséquent, cela peut aboutir à une table cible contenant moins d'enregistrements qu'avant l'opération de jointure.

Lorsque vous devez conserver à la fois les enregistrements cible et tous les enregistrements entrants, utilisez une jointure Outer Join. Lorsqu'aucune correspondance n'est trouvée, chaque ensemble d'enregistrements est conservé, tandis que les champs du côté opposé de la jointure resteront vides (null). Les jointures externes (Outer join) ont généralement peu d'usages pratiques.

Ce type de jointure conserve tous les enregistrements sur le point d'être chargés, tout en réduisant les enregistrements de la table ciblée par la jointure aux seuls enregistrements pour lesquels il existe une correspondance d'association dans les enregistrements entrants. Il s'agit d'une jointure de type niche parfois utilisée pour réduire une table d'enregistrements déjà préchargée à un sous-ensemble requis.

Si le mot-clé de type est omis, Inner Join est le type de jointure par défaut.

Exemples d'ensembles de résultats de différents types d'opérations de jointure

Exemples d'ensembles de résultats de différents types d'opérations de jointure, avec une représentation avant et après des tables de données après chaque opération.
Note InformationsS'il n'existe pas de noms de champ en commun entre la source et la cible d'une opération de jointure, la jointure se traduira par un produit cartésien de toutes les lignes – c'est ce qu'on appelle une « jointure croisée » (cross join).

Exemple d'ensemble de résultats d'une opération « cross join »

Comparaison avant-après des données d'entrée à la sortie après une opération de jointure croisée (qui peut impliquer une opération de jointure de tout type).

 

[inner | outer | left | right ]Join [ (tablename ) ]( loadstatement | selectstatement )

Arguments
Argument Description
tablename Table nommée à comparer à la table chargée.
loadstatementou selectstatement Instruction LOAD ou SELECT de la table chargée.

Ces rubriques peuvent vous aider à utiliser cette fonction :

Rubriques connexes
Rubrique Description
Combinaison de tables grâce à Join et Keep Cette rubrique fournit des explications supplémentaires sur les concepts de « regroupement » (join) et de « conservation » (keep) des ensembles de données.
Keep Le préfixe de chargement Keep est similaire au préfixe Join, mais il ne combine pas les ensembles de données source et cible. Au lieu de cela, il rogne chaque ensemble de données en fonction du type d'opération adopté (inner, outer, left ou right).

Exemple 1 - Left join : Enrichissement d'une table cible à l'aide d'un ensemble de données de référence

Exemple 2 – Inner Join : Combinaison des enregistrements correspondants uniquement

Exemple 3 – Outer Join : Combinaison d'ensembles d'enregistrements en chevauchement

Exemple 4 – Right Join : Réduction d'une table cible à un ensemble de données principal secondaire