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)

Hakkında

key1 (table1 için) ve key2 (table2 için) tarafından seçilen anahtar sütunlarına ilişkin değerlerin eşitliğini göz önünde bulundurarak table1 öğesinin satırlarını table2 öğesinin satırlarıyla birleştirir.

Varsayılan olarak iç birleşim gerçekleştirilir ancak birleşim türünü belirtmek üzere isteğe bağlı bir joinKind eklenebilir. Seçenekler arasında şunlar bulunur:

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

Anahtar sütunlarının nasıl karşılaştırılacağını belirtmek üzere isteğe bağlı bir keyEqualityComparers kümesi eklenebilir. Bu özellik şimdilik yalnızca iç kullanım içindir.

Örnek 1

[CustomerID] üzerindeki iki tabloya yönelik iç birleşim işlemi gerçekleştirir

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 Öğe Fiyat
1 Bob 123-4567 1 Olta takımı 100
1 Bob 123-4567 2 1 kg solucan 5
2 Jim 987-6543 3 Balık ağı 25
3 Paul 543-7890 4 Zıpkın 200
3 Paul 543-7890 5 Yara bandı 2
1 Bob 123-4567 6 Takım çantası 20