Sdílet prostřednictvím


fullouter join

Platí pro: ✅Microsoft FabricAzure Data Explorer✅Azure MonitorMicrosoft Sentinel

Spojení fullouter kombinuje účinek použití levého i pravého vnějšího spojení. Pro sloupce tabulky, které nemají odpovídající řádek, obsahuje null sada výsledků hodnoty. U záznamů, které se shodují, se v sadě výsledků vytvoří jeden řádek obsahující pole naplněná z obou tabulek.

Diagram znázorňující, jak spojení funguje

Syntaxe

LeftTable | join kind=fullouter [ Rady ] Podmínky pravé tabulky on

Přečtěte si další informace o konvencích syntaxe.

Parametry

Název Type Požadováno Popis
Levá tabulka string ✔️ Levá tabulka nebo tabulkový výraz, někdy označovaný jako vnější tabulka, jejíž řádky se mají sloučit. Označeno jako $left.
Rady string Nápovědy k nulovému nebo více mezerami oddělenému spojení ve formě hodnoty názvu = , která řídí chování operace shody řádků a plánu provádění. Další informace naleznete v tématu Nápovědy.
RightTable string ✔️ Pravá tabulka nebo tabulkový výraz, někdy označovaný jako vnitřní tabulka, jejíž řádky se mají sloučit. Označeno jako $right.
Podmínky string ✔️ Určuje, jak se řádky z tabulky LeftTable shodují s řádky z tabulky RightTable. Pokud sloupce, které chcete shodovat, mají v obou tabulkách stejný název, použijte syntaxi ON ColumnName. Jinak použijte syntaxi ON $left.LeftColumn $right.==RightColumn RightColumn. Pokud chcete zadat více podmínek, můžete použít klíčové slovo "a" nebo je oddělit čárkami. Pokud použijete čárky, podmínky se vyhodnocují pomocí logického operátoru "a".

Tip

Nejlepšího výkonu dosáhnete, pokud je jedna tabulka vždy menší než druhá, použijte ji jako levou stranu spojení.

Tipy

Název parametrů Hodnoty Popis
hint.remote auto, left, , localright Viz připojení mezi clustery
hint.strategy=broadcast Určuje způsob sdílení zatížení dotazu na uzly clusteru. Viz připojení k všesměru
hint.shufflekey=<key> Dotaz shufflekey sdílí zatížení dotazu na uzly clusteru pomocí klíče pro dělení dat. Zobrazit dotaz náhodného prohazování
hint.strategy=shuffle shuffle Dotaz strategie sdílí zatížení dotazů na uzly clusteru, kde každý uzel zpracovává jeden oddíl dat. Zobrazit dotaz náhodného prohazování

Návraty

Schéma: Všechny sloupce z obou tabulek, včetně odpovídajících klíčů.
Řádky: Všechny záznamy z obou tabulek s chybějícími buňkami naplněnými hodnotou null.

Příklad

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

Výstup

Klíč Hodnota1 Klíč1 Hodnota2
b 3 b 10
b 2 b 10
c 4 c 20
c 4 c 30
d 40
d 0