Table.Join
Syntax
Table. join (Tabel1 as Table, key1 som en hvilken som helst table2 som tabel, key2 som enhver, valgfri joinKind som tal, der kan være null, valgfrit joinAlgorithm som Nullable-tal, valgfri keyEqualityComparers som en liste, der kan være null) som tabel
Om
Joinforbinder rækkerne table1 med rækkerne table2, afhængigt af ligheden mellem værdierne i de nøglekolonner, der er valgt af key1 (for table1) og key2 (for table2).
Der udføres som standard en indre joinforbindelse, men der kan blive inkluderet en valgfri joinKind, som angiver typen af joinforbindelse. Indstillingerne omfatter:
JoinKind.InnerJoinKind.LeftOuterJoinKind.RightOuterJoinKind.FullOuterJoinKind.LeftAntiJoinKind.RightAnti
Du kan inkludere et valgfrit sæt keyEqualityComparers for at angive, hvordan nøglekolonnerne skal sammenlignes. Denne funktion er i øjeblikket kun beregnet til intern brug.
Eksempel 1
Foretag en indre joinforbindelse af de to tabeller i [CustomerID]
Table.Join(
Table.FromRecords({
[CustomerID = 1, Name = "Bob", Phone = "123-4567"],
[CustomerID = 2, Name = "Jim", Phone = "987-6543"],
[CustomerID = 3, Name = "Paul", Phone = "543-7890"],
[CustomerID = 4, Name = "Ringo", Phone = "232-1550"]
}),
"CustomerID",
Table.FromRecords({
[OrderID = 1, CustomerID = 1, Item = "Fishing rod", Price = 100.0],
[OrderID = 2, CustomerID = 1, Item = "1 lb. worms", Price = 5.0],
[OrderID = 3, CustomerID = 2, Item = "Fishing net", Price = 25.0],
[OrderID = 4, CustomerID = 3, Item = "Fish tazer", Price = 200.0],
[OrderID = 5, CustomerID = 3, Item = "Bandaids", Price = 2.0],
[OrderID = 6, CustomerID = 1, Item = "Tackle box", Price = 20.0],
[OrderID = 7, CustomerID = 5, Item = "Bait", Price = 3.25]
}),
"CustomerID"
)
| CustomerID | Name | Telefon | OrderID | Element | Pris |
|---|---|---|---|---|---|
| 1 | Bob | 123-4567 | 1 | Fiskestang | 100 |
| 1 | Bob | 123-4567 | 2 | 1 kg orm | 5 |
| 2 | Jim | 987-6543 | 3 | Fishing net | 25 |
| 3 | Paul | 543-7890 | 4 | Fish tazer | 200 |
| 3 | Paul | 543-7890 | 5 | Bandaids | 2 |
| 1 | Bob | 123-4567 | 6 | Tackle box | 20 |