inner join
Gilt für: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Der Verknüpfungsgeschmack inner
ist wie die standardmäßige innere Verknüpfung aus der SQL-Welt. Ein Ausgabedatensatz wird erstellt, wenn ein Datensatz auf der linken Seite über den gleichen Join-Schlüssel verfügt wie der Datensatz auf der rechten Seite.
Syntax
LeftTable |
join
kind=inner
[ 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: Nur übereinstimmende Zeilen aus beiden Tabellen.
Beispiel
let X = datatable(Key:string, Value1:long)
[
'a',1,
'b',2,
'b',3,
'k',5,
'c',4
];
let Y = datatable(Key:string, Value2:long)
[
'b',10,
'c',20,
'c',30,
'd',40,
'k',50
];
X | join kind=inner Y on Key
Ausgabe
Schlüssel | Wert1 | Key1 | Wert2 |
---|---|---|---|
b | 3 | b | 10 |
b | 2 | b | 10 |
c | 4 | c | 20 |
c | 4 | c | 30 |
k | 5 | k | 50 |
Hinweis
- Für (b,10) auf der rechten Seite wurden zwei Joins verwendet: mit (b,2) und (b,3) auf der linken Seite.
- Für (c,4) auf der linken Seite wurden zwei Joins verwendet: mit (c,20) und (c,30) auf der rechten Seite.
- (k,5) von links und (k, 50) von rechts wurde einmal verbunden.
Zugehöriger Inhalt
- Erfahren Sie mehr über andere Verknüpfungsaromen