【问题标题】:Use Slicer selection in calculated column (Parameter)在计算列(参数)中使用切片器选择
【发布时间】:2016-09-07 12:33:17
【问题描述】:

我有: - 一个带有日期的切片器和一个带有“日期”列的“日志”表和一个带有数字的“最大值”列(例如 0,31)

当日期在切片器选择日期之前时,我需要计算“最大值”列中所有值的平均值 - 以及之后的平均值。

最终结果:具有所选日期之前所有值的平均值的卡片可视化和具有所选日期之后所有值的平均值的卡片可视化。

【问题讨论】:

  • 我认为您不需要计算列。在您的问题中,您有两个,都称为 Log。添加一些示例数据和您的预期结果

标签: powerbi dax


【解决方案1】:

创建三个度量:

avg = AVERAGE('Log'[Max])


AverageAfterSelectedDate =
CALCULATE (
    [avg],
    FILTER ( ALL ( 'Log' ), [Date] > MINX ( 'Log', 'Log'[Date] ) )
)


AverageBeforeSelectedDate =
CALCULATE (
    [avg],
    FILTER ( ALL ( 'Log' ), 'Log'[Date] < MINX ( 'Log', [Date] ) )
)

只需使用卡片中的AverageBeforeSelectedDateAverageAfterSelectedDate 度量即可。

对于这个数据:

它产生:

如果这有帮助,请告诉我。

【讨论】:

  • 我无法让它工作:公式编辑器不允许我选择切片器中使用的日期字段。我可以从日志表中选择字段并在 SharePoint 表(切片器日期所在的位置)中计算列/度量,但不能选择我需要的字段。切片器日期位于日志之外的另一个表中。
  • 我移动了一些东西并让它工作。非常感谢:)!
  • 附带问题...我在同一个数据库上还有两个切片器处于活动状态。这两个不影响目前的平均值。是否可以扩展解决方案以包含更多切片器?
【解决方案2】:

我必须计算在所选切片日期之前打开的所有帐户的计数。

这就是我最终做的事情

TotalAccounts = 
CALCULATE(
      DISTINCTCOUNT(Table1.ID),
           FILTER( 
                    ALL(Table1),MIN(Table2.Date)>Table1.Date)
                 )

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-21
    • 2013-09-13
    • 1970-01-01
    • 2017-01-13
    • 2013-07-27
    • 1970-01-01
    相关资源
    最近更新 更多