Udostępnij za pośrednictwem


Table.NestedJoin

Składnia

Table.NestedJoin(table1 as table, key1 as any, table2 as any, key2 as any, newColumnName as text, optional joinKind as nullable number, optional keyEqualityComparers as nullable list) as table

Informacje

Łączy wiersze z wierszami table1 table2 w oparciu o równość wartości kolumn kluczy wybranych przez key1 (dla table1) i key2 (dla table2). Wyniki są wprowadzane do kolumny o nazwie newColumnName.

Opcjonalnie joinKind określa rodzaj sprzężenia do wykonania. Domyślnie lewe sprzężenia zewnętrzne jest wykonywane, jeśli nie określono elementu joinKind .

Opcjonalny zestaw keyEqualityComparers może zostać uwzględniony w celu określenia sposobu porównywania kolumn kluczy. Ta keyEqualityComparers funkcja jest obecnie przeznaczona tylko do użytku wewnętrznego.

Przykład 1

Połącz dwie tabele przy użyciu jednej kolumny klucza.

Użycie

Table.NestedJoin(
    Table.FromRecords({
        [CustomerToCall = 1],
        [CustomerToCall = 3]
    }),
    {"CustomerToCall"},
    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"},
    "CustomerDetails"
)

Wyjście

Table.FromRecords({
    [CustomerToCall = 1, CustomerDetails = Table.FromRecords({[CustomerID = 1, Name = "Bob", Phone = "123-4567"]})],
    [CustomerToCall = 3, CustomerDetails = Table.FromRecords({[CustomerID = 3, Name = "Paul", Phone = "543-7890"]})]
})

Rodzaj sprzężenia