【问题标题】:How to create table based on minimum date from other table in DAX?如何根据 DAX 中其他表的最小日期创建表?
【发布时间】:2019-12-05 15:43:22
【问题描述】:

我想使用包含日期和其他变量的过滤器从第一个表创建第二个表,如下所示。我该如何创建它?

以下是预期表和原表,

【问题讨论】:

  • 您是想在视觉上执行此操作,还是出于某种原因需要编写新的计算表?
  • 实际上,我正在尝试创建不同的表,因为我想将其用于其他操作。
  • 我已经回复了您的帖子,是否符合您的查询?

标签: powerbi dax


【解决方案1】:

转到Edit Queries。假设我们的基表名为RawData。添加一个空白查询并使用此表达式复制您的 RawData 表:

=RawData

新表将是RawDataGrouped。现在选择新表并转到Home > Group By 并使用以下设置:

结果将如下表所示。请注意,我并没有使用您用来保持此样本最小努力的确切值:

您现在还可以在这两个表之间(通过Index 列)创建关系,以在它们之间使用交叉过滤。

例如,您可以显示分组数据并使用关系在子报表(或自定义工具提示)中显示RawDate

【讨论】:

  • 感谢您的回复和解决方案。实际上,我正在寻找 DAX 语法,因为最小日期选择将是动态的,如果我使用日期切片器,那么我无法与查询编辑器进行反向通信。
【解决方案2】:

我假设您正在寻找一个计算表。以下是相同的解决方法,

查询编辑器中,您可以创建现有(原始)表的重复表并选择日期过滤器 -> 最早选项通过单击新重复表中日期列的右上角。现在您的表应该只包含列的最小日期的行。

注意:此表是动态的,会根据原表中的数据变化给出后续结果,但你必须刷新两个表。

原表:

所需的表:

当我在其中添加新列时,发布到刷新数据集我得到以下结果(这意味着它正在根据原始源中的每个数据更改进行重新计算)

新数据输入:

输出:

【讨论】:

  • 感谢您的回复和解决方案。实际上,我正在寻找 DAX 语法。
  • 这将满足您的需要,如果您有任何日期更改或任何新数据已添加到原始表中,则此表将重新计算。
  • 好的。如果我从 Power BI Desktop 切片器更改数据,它将如何过滤查询编辑器中的数据?
  • 请明确您的要求,如果您需要DAX,那么这是一种措施。您不能拥有基于切片器选择的动态表,这是不可能的。
  • 根据您的问题,您需要使用最小值日期过滤的表格。这是回答。当前问题与您现在提出的问题不同。您可以随时提出另一个问题。
猜你喜欢
  • 2010-12-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-26
  • 2022-01-22
  • 2022-11-26
  • 1970-01-01
相关资源
最近更新 更多