Dela via


rightouter join

Gäller för: ✅Microsoft FabricAzure Data ExplorerAzure MonitorMicrosoft Sentinel

Den rightouter kopplingssmaken returnerar alla poster från höger sida och matchar endast poster från vänster sida. Denna kopplingssmak liknar leftouter kopplingssmaken, men behandlingen av tabellerna är omvänd.

diagram som visar hur kopplingen fungerar.

Syntax

LeftTable|joinkind=rightouter [ Tips ] RightTableonVillkor

Läs mer om syntaxkonventioner.

Parametrar

Namn Typ Krävs Beskrivning
LeftTable string ✔️ Det vänstra tabell- eller tabelluttrycket, som ibland kallas för den yttre tabellen, vars rader ska sammanfogas. Anges som $left.
tips string Noll eller fler blankstegsavgränsade kopplingstips i form av Name=Value som styr beteendet för radmatchningsåtgärden och körningsplanen. Mer information finns i Tips.
RightTable string ✔️ Den högra tabellen eller tabelluttrycket, som ibland kallas för den inre tabellen, vars rader ska sammanfogas. Anges som $right.
villkor string ✔️ Avgör hur rader från LeftTable- matchas med rader från RightTable. Om de kolumner som du vill matcha har samma namn i båda tabellerna använder du syntaxen ONColumnName. Annars använder du syntaxen ON $left.LeftColumn==$right.RightColumn. Om du vill ange flera villkor kan du antingen använda nyckelordet "och" eller separera dem med kommatecken. Om du använder kommatecken utvärderas villkoren med hjälp av den logiska operatorn "och".

Dricks

För bästa prestanda, om en tabell alltid är mindre än den andra, använder du den som vänster sida av kopplingen.

Tips

Namn på parametrar Värden Beskrivning
hint.remote auto, left, local, right Se
hint.strategy=broadcast Anger hur du delar frågebelastningen på klusternoder. Se broadcast join
hint.shufflekey=<key> Den shufflekey frågan delar frågebelastningen på klusternoder med hjälp av en nyckel för att partitioneras data. Se shuffle-fråga
hint.strategy=shuffle Den shuffle strategifrågan delar frågebelastningen på klusternoder, där varje nod bearbetar en partition av data. Se shuffle-fråga

Returnerar

Schema: Alla kolumner från båda tabellerna, inklusive matchande nycklar.
Rader: Alla poster från den högra tabellen och endast matchande rader från den vänstra tabellen.

Exempel

Den här frågan returnerar alla rader från tabell Y och matchande rader från tabell X och fyller i NULL-värden där det inte finns någon matchning från X.

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=rightouter Y on Key

utdata

Nyckel Värde 1 Key1 Värde 2
b 2 b 10
b 3 b 10
c 4 c 20
c 4 c 30
d 40