Partager via


leftanti join

La leftanti saveur de jointure retourne tous les enregistrements du côté gauche qui ne correspondent à aucun enregistrement du côté droit. L’anti-jointure modélise la requête « NOT IN ».

Alias : anti,leftantisemi

Diagramme montrant le fonctionnement de la jointure.

Syntaxe

LeftTable [ Hints ] RightTable on | join kind=leftanti Conditions

En savoir plus sur les conventions de syntaxe.

Paramètres

Nom Type Requise Description
LeftTable string ✔️ La table de gauche ou expression tabulaire, parfois appelée « table externe », dont les lignes doivent être fusionnées. Désignée sous la forme suivante : $left.
Indicateurs string Zéro ou plusieurs indicateurs de jointure séparés par l’espace sous la forme de valeur de nom = qui contrôlent le comportement de l’opération de correspondance de ligne et du plan d’exécution. Pour plus d’informations, consultez Indicateurs.
RightTable string ✔️ La table de droite ou expression tabulaire, parfois appelée « table interne », dont les lignes doivent être fusionnées. Désignée sous la forme suivante : $right.
Conditions string ✔️ Détermine le mode de mise en correspondance des lignes de LeftTable avec les lignes de RightTable. Si les colonnes que vous souhaitez mettre en correspondance ont le même nom dans les deux tables, utilisez la syntaxe ON ColumnName. Sinon, utilisez la syntaxe ON $left.LeftColumn RightColumn == $right.. Pour spécifier plusieurs conditions, vous pouvez utiliser le mot clé « and » ou séparer les conditions par des virgules. Si vous utilisez des virgules, les conditions sont évaluées avec l’opérateur logique « and ».

Conseil

Pour des performances optimales, si une table est toujours plus petite que l’autre, utilisez-la pour le côté gauche de la jointure.

Indicateurs

Nom des paramètres Valeurs Description
hint.remote auto, , leftlocal, ,right Voir Jointure entre clusters
hint.strategy=broadcast Spécifie comment partager la charge de la requête sur les nœuds du cluster. Consultez Répartir une jointure.
hint.shufflekey=<key> La requête shufflekey partage la charge de requête sur les nœuds de cluster à l’aide d’une clé pour partitionner les données. Voir requête de lecture aléatoire
hint.strategy=shuffle La requête de stratégie shuffle partage la charge de requête sur les nœuds de cluster, où chaque nœud traite une partition des données. Voir requête de lecture aléatoire

Retours

Schéma : toutes les colonnes de la table de gauche.
Lignes : tous les enregistrements de la table de gauche qui ne correspondent pas aux enregistrements de la table de droite.

Exemple

let X = datatable(Key:string, Value1:long)
[
    'a',1,
    'b',2,
    'b',3,
    'c',4
];
let Y = datatable(Key:string, Value2:long)
[
    'b',10,
    'c',20,
    'c',30,
    'd',40
];
X | join kind=leftanti Y on Key

Sortie

Clé Value1
a 1