Table.Join

Syntax

Table.Join(table1 as table, key1 as any, table2 as table, key2 as any, optional joinKind as nullable number, optional joinAlgorithm as nullable number, optional keyEqualityComparers as nullable list) as table

Informácie

Spojí riadky tabuľky table1 s riadkami tabuľky table2 na základe rovnosti hodnôt kľúčových stĺpcov vybratých podľa kľúča key1 (pre tabuľku table1) a kľúča key2 (pre tabuľku table2).

V predvolenom nastavení sa vykonáva vnútorné spojenie, ale na určenie typu spojenia možno zadať voliteľnú možnosť joinKind. Možnosti zahŕňajú:

  • JoinKind.Inner
  • JoinKind.LeftOuter
  • JoinKind.RightOuter
  • JoinKind.FullOuter
  • JoinKind.LeftAnti
  • JoinKind.RightAnti

Voliteľná množina porovnávačov rovnakosti kľúča keyEqualityComparers, ktorá určuje spôsob porovnania kľúčových stĺpcov, môže byť tiež zahrnutá. Táto funkcia je momentálne určená len na interné použitie.

Príklad 1

Vnútorne spojte dve tabuľky použitím poľa [IDZákaznika]

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"
)
ID zákazníka Name Telefón ID objednávky (OrderID) Položka Cena
1 Ján 123-4567 1 Fishing rod 100
1 Ján 123-4567 2 1 lb. worms 5
2 Jim 987 – 6543 3 Rybárska sieť 25
3 Paul 543 – 7890 4 Rybky návnady 200
3 Paul 543 – 7890 5 Leukoplasty 2
1 Ján 123-4567 6 Kufrík s náradím 20