LOOKUP

La función LOOKUP devuelve el valor de una expresión que se calcula para una fila de la tabla referenciada mediante su distancia a la fila actualmente siendo considerada.

Sintaxis

LOOKUP(<expresión>[, <distancia])

Parámetros
  • expresión: expresión a calcular para la fila objetivo
  • distancia: (opcional) distancia de la fila objetivo a la fila actual
Valor devuelto

La función LOOKUP devuelve un escalar.

Información adicional

La fila anterior a una dada está a una distancia de -1, y la siguiente a una distancia de +1. Podemos recurrir a la expresión FIRST() + n si queremos acceder a la fila n-ésima a contar desde el principio de la tabla, o a LAST() - n si queremos acceder a la fila n-ésima a contar desde el final de la tabla.

Esta función devuelve un valor nulo si no es posible determinar la fila objetivo.

Ejemplos

Dada una tabla mostrando, por ejemplo, un listado de países y las ventas asociadas:

Ventas por país

...podemos acceder a las ventas de la fila anterior con el siguiente campo calculado:

Previous sales =

LOOKUP(SUM([Amount]), -1)

Si añadimos este campo calculado al estante de filas, obtenemos el siguiente resultado:

Función LOOKUP

Observamos que el resultado devuelto para la primera fila es un valor nulo, pues no es posible determinar cuál es la fila anterior.

Siguiendo con el mismo ejemplo, podemos mostrar no las ventas de la fila anterior, sino la diferencia de las ventas de la fila actual con una fila dada, por ejemplo la correspondiente a Francia (que ocupa la primera fila). Para ello podemos crear el siguiente campo calculado:

Sales vs. Sales France =

SUM([Amount]) - LOOKUP(SUM([Amount]), FIRST())

El resultado es, efectivamente, la diferencia entre cada cifra de ventas y la de Francia:

Función LOOKUP
Categoría
Cálculo de tablas
Enviado por admin el Mié, 16/10/2019 - 11:57