从数据到信息
从信息到洞察

LOOKUPVALUE

从表中检索满足所有匹配条件的值。

语法

LOOKUPVALUE ( <结果列>, <查找列>, <查找值>, [<查找列>, <查找值> … ], [<备选结果>] )
参数 属性 描述
结果列 要返回的值所在的列名。列必须使用标准 DAX 语法命名,通常是完全限定的,不支持表达式。
查找列 可重复 在与结果列相同的表中或扩展表中,执行查找的现有列的名称,查找列使用完全限定名。不支持表达式
查找值 可重复 标量表达式(不引用正在搜索的同一表中的任何列)
备选结果 可选 当第一参数结果为空或多个不重复值时的替代结果,如果省略此参数,为空时返回 BLANK,匹配多值时返回错误

返回值

标量 一个任意类型的值

备注

  • 如果没有满足所有搜索值的匹配项,则返回空值或<备选结果>(如果提供) 。 换句话说,如果仅部分条件匹配,则该函数将不会返回查找值
  • 如果有多行匹配搜索值,并且在所有情况下结果列的值都相同,那么 LOOKUPVALUE 返回该值 。 但是,如果结果列返回不同的值,则函数返回错误或备选结果(如果提供)
  • 查找列可以使用结果列所在表的扩展表中的任何列

当不可能使用 RELATED 利用数据模型中的现有关系获取数据时,才可以考虑使用 LOOKUPVALUE,因为 RELATED 更快。正因如此,LOOKUPVALUE 通常用于无关系数据的获取,此时 TREATAS 也是不错的选择,而且某些某些情况下性能可能好于 LOOKUPVALUE

示例

搜索同一表中包含的给定日期和货币的汇率:

LOOKUPVALUE (
    ExchangeRates[Rate],
    ExchangeRates[Date], DATE ( 2018, 4, 15 ),
    ExchangeRates[Currency], "EUR"
)

扩展阅读:

 

说点什么

1000
 
鼓掌微笑开心憧憬爱你色并不觉得吃瓜doge二哈喵喵思考笑哭捂脸悲伤大哭抓狂汗偷笑打脸捂眼黑线问号晕拜拜闭嘴衰咒骂ok作揖
  订阅本文评论  
提醒
DAX 圣经

DAX 函数大全

DAX 查询

DAX 运算符