Compartilhar via


Table.NestedJoin

Sintaxe

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

Sobre

Une as linhas de table1 com as linhas de table2 com base na igualdade dos valores das colunas de chave selecionadas por key1 (para table1) e key2 (para table2). Os resultados são inseridos na coluna chamada newColumnName.

O joinKind opcional especifica o tipo de junção a ser executada. Por padrão, uma junção externa esquerda será executada se uma joinKind não for especificada.

Um conjunto opcional de keyEqualityComparers pode ser incluído para especificar como comparar as colunas de chave. Esse recurso keyEqualityComparers é destinado somente para uso interno.

Exemplo 1

Una duas tabelas usando uma coluna de chave.

Usage

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

Saída

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