NATURALLEFTOUTERJOIN

La función NATURALLEFTOUTERJOIN realiza una combinación externa izquierda natural de dos tablas.

Sintaxis

NATURALLEFTOUTERJOIN(
    leftJoinTable,
    rightJoinTable
)

Parámetros
  • leftJoinTable: Tabla existente o expresión que devuelve una tabla para el lado izquierdo de la combinación.
  • rightJoinTable: Tabla existente o expresión que devuelve una tabla para el lado derecho de la combinación.
Valor devuelto

La función NATURALLEFTOUTERJOIN devuelve la tabla izquierda tras añadir las columnas no comunes de la tabla derecha usando como claves los valores de los campos comunes en ambas tablas.

Información adicional

La tabla resultante tendrá las columnas de la tabla izquierda más las columnas no comunes de la tabla derecha.

No se garantiza el orden de las filas en la tabla resultado.

Las columnas comunes deberán tener el mismo tipo de datos en ambas tablas.

Solo se combinan columnas con la misma ascendencia (procedentes de la misma fuente).

Ejemplos

Supongamos que partimos de las siguientes dos tablas, "Population":

Función NATURALINNERJOIN. Ejemplo de uso

y "Extension":

Función NATURALINNERJOIN. Ejemplo de uso

...conteniendo respectivamente la población y extensión de cierto número de países.

Podemos intentar realizar un left outer join entre estas dos tablas con la siguiente expresión:

naturalleftouterjoin = NATURALLEFTOUTERJOIN(Extension, Population)

Función NATURALLEFTOUTERJOIN. Ejemplo de uso

...pero vemos cómo devuelve un mensaje de error debido a un bug de DAX al trabajar con este tipo de combinaciones.

Una posible solución consiste en leer las tablas usando la función SELECTCOLUMNS añadiendo a los campos comunes una cadena de texto vacía:

naturalleftouterjoin =
    VAR
        LeftTable =
            SELECTCOLUMNS(
                Population,
                "Country", Population[Country] & "",
                "Population", Population[Population]
        )
    VAR
        RightTable =
            SELECTCOLUMNS(
                Extension,
                "Country", Extension[Country] & "",
                "Extension", Extension[Extension]
            )
    RETURN
        NATURALLEFTOUTERJOIN(LeftTable, RightTable)

Función NATURALLEFTOUTERJOIN. Ejemplo de uso
Funciones relacionadas
Categoría
Otras funciones
Enviado por admin el Jue, 17/01/2019 - 13:07