PowerBI:查找在特定日期有效的所有记录
PowerBI: Find all records valid on specific date
我有一个带有记录的经典数据仓库。每条记录都有一个 valid_from 和一个 valid_to 日期。
现在我想在 PowerBI 中设置一个过滤器。这个想法是用户以某种方式设置一个日期,并且该日期介于 valid_from 和 valid_to 之间的所有记录都应该在 PowerBI 中可用。从而为用户提供了通过数据进行时间旅行的可能性。
这似乎是一个非常标准的任务,但我找不到如何做...有什么建议吗?
鉴于没有明确细节的模糊问题,我将不得不做出一些假设。我假设您有一个日期切片器,该切片器由与您的数据 table 无关的参数 table 填充,并且您有一组在视觉对象中使用的度量来显示您的记录有兴趣。
鉴于这些假设,您可以编写一个度量来按照这些行过滤现有的度量:
FilteredMeasure =
VAR SelectedDate = SELECTEDVALUE ( DateSlicer[Date] )
RETURN
CALCULATE (
[ExistingMeasure],
FILTER (
DataTable,
DataTable[valid_from] <= SelectedDate
&& SelectedDate < DataTable[valid_to]
)
)
这是另一个类似但不完全等价的公式:
FilteredMeasure =
VAR SelectedDate = SELECTEDVALUE ( DateSlicer[Date] )
RETURN
CALCULATE (
[ExistingMeasure],
DataTable[valid_from] <= SelectedDate,
DataTable[valid_to] > SelectedDate
)
我有一个带有记录的经典数据仓库。每条记录都有一个 valid_from 和一个 valid_to 日期。
现在我想在 PowerBI 中设置一个过滤器。这个想法是用户以某种方式设置一个日期,并且该日期介于 valid_from 和 valid_to 之间的所有记录都应该在 PowerBI 中可用。从而为用户提供了通过数据进行时间旅行的可能性。
这似乎是一个非常标准的任务,但我找不到如何做...有什么建议吗?
鉴于没有明确细节的模糊问题,我将不得不做出一些假设。我假设您有一个日期切片器,该切片器由与您的数据 table 无关的参数 table 填充,并且您有一组在视觉对象中使用的度量来显示您的记录有兴趣。
鉴于这些假设,您可以编写一个度量来按照这些行过滤现有的度量:
FilteredMeasure =
VAR SelectedDate = SELECTEDVALUE ( DateSlicer[Date] )
RETURN
CALCULATE (
[ExistingMeasure],
FILTER (
DataTable,
DataTable[valid_from] <= SelectedDate
&& SelectedDate < DataTable[valid_to]
)
)
这是另一个类似但不完全等价的公式:
FilteredMeasure =
VAR SelectedDate = SELECTEDVALUE ( DateSlicer[Date] )
RETURN
CALCULATE (
[ExistingMeasure],
DataTable[valid_from] <= SelectedDate,
DataTable[valid_to] > SelectedDate
)