【问题标题】:DAX (calculated column, related tables)DAX(计算列、相关表)
【发布时间】:2015-09-22 23:19:52
【问题描述】:

我有一个表 [Delays],其中有一列名为 [Delay]。我还有一个表 [Ranges],其中包含三列:[Range]、[From] 和 [To]。我需要在 [Delays] 表中创建一列,以根据以下条件显示 [Ranges] 表中的 Range 值: 'Delays'[Delay] >= 'Ranges'[From] && 'Delays'[Delay]

非常感谢您的帮助。

【问题讨论】:

  • 您可能希望创建一个度量来返回任意行集的最小/最大范围值,然后将计算列设置为度量的值。然后将在特定行的行上下文中评估该度量,您应该得到您想要的。自己没试过;)

标签: dax powerbi


【解决方案1】:

尝试使用以下方法创建度量:

 =CALCULATE(
   VALUES(Ranges[Range]), 
   FILTER(Ranges, 
      Delays[Delay] >= Ranges[From] 
      && Delays[Delay] < Ranges[To]
)

根据您的表,您可能需要使用 HASONEVALUE 函数,因为如果延迟落在多个范围内,则度量将失败。

这是假设 Ranges 表和 Delays 表没有连接在一起。如果是,您可以从延迟表中添加 Ranges[Range]。

SUMMARIZE(
   Delays,
   Delays[Delay],
   Range[Ranges]
)

【讨论】:

  • 谢谢。我最终做了一些与您提出的非常相似的事情,除了我需要一个计算列而不是度量: =CALCULATE(VALUES(Ranges[Range]), TOPN(1, FILTER(Ranges, Delays[Delay] >= Ranges[From] && Delays[Delay]
猜你喜欢
  • 2020-07-14
  • 1970-01-01
  • 1970-01-01
  • 2022-07-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多