leftouter join
Gilt für: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Der Verknüpfungsgeschmack leftouter
gibt alle Datensätze aus der linken Seitentabelle und nur übereinstimmende Datensätze aus der rechten Seitentabelle zurück.
Syntax
LeftTable |
join
kind=leftouter
[ Hinweise ] RightTable-Bedingungen on
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Type | Erforderlich | BESCHREIBUNG |
---|---|---|---|
LeftTable | string |
✔️ | Die linke Tabelle oder der tabellarischen Ausdruck, die bzw. der manchmal als äußere Tabelle bezeichnet wird, deren Zeilen zusammengeführt werden sollen. Wird als $left bezeichnet. |
Hinweise | string |
Null- oder mehr durch Leerzeichen getrennte Verknüpfungshinweise in Form des Namenswerts = , die das Verhalten des Vorgangs mit Zeilenübereinstimmung und des Ausführungsplans steuern. Weitere Informationen finden Sie unter Hinweise. |
|
RightTable | string |
✔️ | Die rechte Tabelle oder der tabellarische Ausdruck, die bzw. der manchmal als innere Tabelle bezeichnet werden, deren Zeilen zusammengeführt werden sollen. Wird als $right bezeichnet. |
Conditions (MSBuild-Bedingungen) | string |
✔️ | Bestimmt, wie Zeilen aus LeftTable mit Zeilen aus RightTable abgeglichen werden. Wenn die Spalten, die Sie abgleichen möchten, in beiden Tabellen denselben Namen haben, verwenden Sie die Syntax ON "ColumnName". Verwenden Sie andernfalls die Syntax ON $left. "LeftColumn RightColumn$right. == ". Um mehrere Bedingungen anzugeben, können Sie entweder das Schlüsselwort „and“ verwenden oder sie durch Kommas trennen. Wenn Sie Kommas verwenden, werden die Bedingungen mit dem logischen Operator „and“ ausgewertet. |
Tipp
Wenn eine Tabelle immer kleiner als die andere ist, verwenden Sie diese für die bestmögliche Leistung als die linke Seite des Join.
Hinweise
Parametername | Werte | Beschreibung |
---|---|---|
hint.remote |
auto , , left local right |
Siehe clusterübergreifender Join |
hint.strategy=broadcast |
Gibt die Art und Weise an, in der die Abfragelast auf Clusterknoten verteilt wird. | Siehe Broadcast-Join |
hint.shufflekey=<key> |
Die shufflekey -Abfrage teilt die Abfragelast auf Clusterknoten auf, wobei ein Schlüssel zum Partitionieren der Daten verwendet wird. |
Weitere Informationen finden Sie unter Shuffleabfrage |
hint.strategy=shuffle |
Die shuffle -Strategieabfrage teilt die Abfragelast auf Clusterknoten auf, wobei jeder Knoten eine Partition der Daten verarbeitet. |
Weitere Informationen finden Sie unter Shuffleabfrage |
Gibt zurück
Schema: Alle Spalten aus beiden Tabellen, einschließlich der übereinstimmenden Schlüssel.
Zeilen: Alle Datensätze aus der linken Tabelle und nur übereinstimmende Zeilen aus der rechten Tabelle.
Beispiel
Das Ergebnis einer linken äußeren Verknüpfung für Tabellen X und Y enthält immer alle Datensätze der linken Tabelle (X), auch wenn die Verknüpfungsbedingung keinen übereinstimmenden Datensatz in der rechten Tabelle (Y) findet.
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=leftouter Y on Key
Ausgabe
Schlüssel | Wert1 | Key1 | Wert2 |
---|---|---|---|
a | 1 | ||
b | 2 | b | 10 |
b | 3 | b | 10 |
c | 4 | c | 20 |
c | 4 | c | 30 |
Zugehöriger Inhalt
- Erfahren Sie mehr über andere Verknüpfungsaromen