Прочитать на английском

Поделиться через


Table.NestedJoin

Синтаксис

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

О программе

Объединяет строки с строками table1 на основе равенства значений ключевых столбцов table2 , выбранных key1 (for table1) и key2 (для table2). Результаты вводятся в столбец с именем newColumnName.

Необязательный joinKind указывает тип соединения для выполнения. По умолчанию левое внешнее соединение выполняется, если joinKind не указано.

Необязательный набор keyEqualityComparers может быть включен, чтобы указать, как сравнить ключевые столбцы. Сейчас функция keyEqualityComparers предназначена только для внутреннего использования.

Пример 1

Объединение двух таблиц с помощью одного ключевого столбца.

Использование

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"
)

Выходные данные

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"]})]
})

Тип соединения