NATURALINNERJOIN, y, NATURALLEFTOUTERJOIN.
- Jaime Franco Jimenez

- 11 jul 2023
- 2 Min. de lectura
Esta función nos permite unir dos tablas, y, devuelve una tabla donde los valores de las columnas especificadas en las filas de ambas tablas coinciden.
Sintaxis
NATURALINNERJOIN(<LeftTable>, <RightTable>)
La tabla devuelta tiene las columnas comunes de la tabla de la izquierda, además, de otras columnas de ambas tablas.
Los nombres de columnas en ambas tablas deben de ser los mismos, además, de tener el mismo tipo de datos.
Veamos un ejemplo, tenemos el modelo llamado Ventas1, que es el modelo que suelo usar en Excel.
Creamos una medida llamada totales, donde sumamos la columna de total.

Creamos una nueva tabla, para ello, vamos a la pestaña herramientas de tablas, y, hacemos clic en nueva tabla.

Vamos a crear una variable llamada datos1, donde usamos la función SELECTCOLUMNS, como argumento tabla, usamos la función TREATAS, como argumento expresión, entre llaves, ponemos las provincias de Sevilla, Cadiz, y, Huelva, como argumento columname1, ponemos la columna provincia, es decir, vamos a crear una tabla solo con las provincias de Sevilla, Cadiz, y, Huelva.
Coma, como argumento nombre de columna1 de SELECTCOLUMNS, entre comillas dobles, ponemos Provincias, como argumento expresion1, ponemos la medida totales.
Cerramos paréntesis.

Creamos otra variable llamada datos2, es la misma expresión que la anterior, pero en provincias ponemos, solo, las provincias de Sevilla, y, Cadiz.

Ponemos la palabra return.
Ponemos la variable datos1.

Tenemos una tabla con las provincias de Sevilla, Cadiz, y, Huelva con el total para cada provincia.

Ahora, ponemos la variable datos2.

Ahora, tenemos una tabla solo con las provincias de Sevilla, y, Cadiz, con sus totales.

Vamos a usar la función NATURALINNERJOIN, como argumento tabla de la izquierda, ponemos la variable datos1, como argumento tabla de la derecha, ponemos la variable datos2.
Tenemos el total para las provincias de Sevilla y Cadiz, porque ambas provincias aparecen en ambas tablas.

Si en vez de usar NATURALINNERJOIN, usamos NATURALLEFTOUTERJOIN, cuya sintaxis es la misma que para NATURALINNERJOIN, vemos que nos devuelve las provincias de Sevilla, Cadiz, y, Huelva, porque incluye las filas de la tabla de la derecha, que son Sevilla, y, Cadiz, además, de los valores presentes en la columna de la izquierda.
Miguel Angel Franco




Comentarios