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.Inner
  • JoinKind.LeftOuter
  • JoinKind.RightOuter
  • JoinKind.FullOuter
  • JoinKind.LeftAnti
  • JoinKind.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