Compartir a través de


LOOKUPVALUE

Se aplica a:columna Calculadatabla calculadaMedidacálculo visual

Devuelve el valor de la fila que cumple todos los criterios especificados por una o varias condiciones de búsqueda.

Sintaxis

LOOKUPVALUE (
    <result_columnName>,
    <search_columnName>,
    <search_value>
    [, <search2_columnName>, <search2_value>]…
    [, <alternateResult>]
)

Parámetros

Término Definición
result_columnName Nombre de una columna existente que contiene el valor que desea devolver. No puede ser una expresión.
search_columnName Nombre de una columna existente. Puede estar en la misma tabla que result_columnName o en una tabla relacionada. No puede ser una expresión. Se pueden especificar varios pares de search_columnName y search_value.
search_value Valor que se va a buscar en search_columnName. Se pueden especificar varios pares de search_columnName y search_value.
alternateResult (Opcional) Valor devuelto cuando el contexto de result_columnName se ha filtrado hasta cero o más de un valor distinto. Si no se especifica, la función devuelve BLANK cuando result_columnName se filtra a cero valores o un error cuando hay más de un valor distinto en el contexto de result_columnName.

Valor devuelto

Valor de result_columnName en la fila donde todos los pares de search_columnName y search_value tienen una coincidencia exacta.

Si no hay ninguna coincidencia que satisfaga todos los valores de búsqueda, se devuelve BLANK o alternateResult (si se especifica). En otras palabras, la función no devuelve un valor de búsqueda si solo coinciden algunos de los criterios.

Si varias filas coinciden con los valores de búsqueda y los valores de la result_columnName para estas filas son idénticos, se devuelve ese valor. Sin embargo, si result_columnName devuelve valores diferentes, se devuelve un error o alternateResult (si se especifica).

Observaciones

  • Si hay una relación entre la tabla que contiene la columna de resultados y las tablas que contienen las columnas de búsqueda, en la mayoría de los casos, el uso de la función RELATED en lugar de LOOKUPVALUE es más eficaz y proporciona un mejor rendimiento.

  • Se pueden especificar varios pares de search_columnName y search_value.

  • Los parámetros search_value y alternateResult se evalúan antes de que la función recorra en iteración las filas de la tabla de búsqueda.

  • Evite usar funciones ISERROR o IFERROR para capturar un error devuelto por LOOKUPVALUE. Si algunas entradas de la función producen un error cuando no se puede determinar un único valor de salida, proporcionar un parámetro alternateResult es la manera más confiable y de mayor rendimiento para controlar el error.

  • El parámetro alternateResult devuelve un error si se especifica en una columna calculada de Power Pivot.

  • Esta función no se admite para su uso en el modo DirectQuery cuando se usa en columnas calculadas o reglas de seguridad de nivel de fila (RLS).

Ejemplo 1

En este ejemplo, se usa LOOKUPVALUE para buscar la tasa media de la moneda utilizada para pagar el pedido el día en que se realizó el pedido:

Exchange Rate = 
LOOKUPVALUE (
    'Currency Rate'[Average Rate],
    'Currency Rate'[CurrencyKey], [CurrencyKey],
    'Currency Rate'[DateKey], [OrderDateKey]
)

Tanto la fecha de pedido como la moneda son necesarias para encontrar la tasa media para la fecha y moneda correctas. OrderDateKey y CurrencyKey son las claves que se usan para buscar la tasa media en la tabla Tipo de moneda.

Puede usar el tipo de cambio para calcular el importe de ventas en moneda local con:

Sales Amount Local Currency = [Sales Amount] * [Exchange Rate]

Ejemplo 2

En este ejemplo, la siguiente columna calculada definida en la tabla Sales de usa la función para devolver valores de canal de la tabla Sales Order.

CHANNEL = 
LOOKUPVALUE (
    'Sales Order'[Channel],
    'Sales Order'[SalesOrderLineKey],
    [SalesOrderLineKey]
)

Sin embargo, en este caso, dado que hay una relación entre el Sales Order y las tablas sales , es más eficaz usar la función .

CHANNEL = RELATED('Sales Order'[Channel])

función RELATED (DAX)funciones de información