Table.Join

La función Table.Join realiza un join (una combinación horizontal) de dos tablas basándose en la igualdad de las columnas clave indicadas.

Sintaxis

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

Parámetros
  • table1: tabla izquierda a combinar
  • key1: clave o claves de la tabla izquierda
  • table2: tabla derecha a combinar
  • key2: clave o claves de la tabla derecha
  • joinKind: (opcional) tipo de join a realizar
  • joinAlgorithm: (opcional) algoritmo a aplicar en la ejecución del join
  • keyEqualityComparers: (opcional) criterio de igualdad de claves
Información adicional

Los parámetros key1 y key2 pueden ser el nombre de un campo (si se trata de una clave simple) o una lista de nombres de campos (si se trata de una clave compuesta).

El parámetro joinKind puede tomar los siguientes valores:

Véase en cada una de sus fichas un ejemplo de uso.

El valor por defecto es el correspondiente al valor JoinKind.Inner.

El parámetro joinAlgorithm determina el algoritmo a aplicar para ejecutar el join, y su elección puede tener un notable impacto en el rendimiento de la función si las tablas no están ordenadas.

Este parámetro puede tomar los siguientes valores:

Si no se especifica, la máquina M determina el algoritmo más adecuado de forma heurística.

Ejemplos

En este ejemplo partimos de una tabla con información de clientes y otra con información de compras que combinamos con la función Table.Join, aplicándose por defecto un join interno:

Table.Join(
    Table.FromRecords({
        [id = 1, name = "Jorge"],
        [id = 2, name = "Julia"],
        [id = 3, name = "Manuel"]
    }),
    "id",
    Table.FromRecords({
        [order_id = 1, customer_id = 1, Price = 10],
        [order_id = 2, customer_id = 3, Price = 5],
        [order_id = 3, customer_id = 3, Price = 15],
        [order_id = 4, customer_id = 1, Price = 20],
        [order_id = 5, customer_id = 4, Price = 8],
        [order_id = 6, customer_id = 1, Price = 25]
    }),
    "customer_id"
)

Función M Table.Join
Categoría
Funciones de tabla
Submitted by admin on Fri, 09/04/2020 - 16:52