powerbi - 在 PowerBI 中使用日期表动态计算度量
问题描述
我正在尝试使用日期表,称为日期,格式如下
Date Month Day Year
01/01/2019 01 01 2019
01/02/2019 01 02 2019
....
与另一个名为 A 的表,格式如下
ID DateStarted Type
01 12/30/2018 apple
02 12/30/2017 apple
03 12/31/2018 carrot
...
我想创建一个度量或其他东西,所以我可以在图表中动态显示苹果/胡萝卜的数量,其中开始日期在日期表中某个随机日期的 12 个月内(我想显示日期表格 ['Date'] 字段作为我在图表上的轴,例如计算出的“12 个月内”作为我的值,然后能够使用“类型”字段作为我的图例值。所以对于上面的例子,我会在图表上看到 2019 年 1 月至 12 月,然后在 2019 年 1 月看到苹果和胡萝卜的值 1 和 1(因为另一个苹果在此之前 24 个月发货。)然后,在 2019 年 2 月图表中,两个值都为 0。
我试图弄乱 Countax,但我似乎无法让它工作,因为 Date 表中有多个值,并且 powerbi 希望我汇总它们。
Shipments in past 12 months = COUNTAX(MDBEQUIP,(DATEDIFF(Dates[Date],MDBEQUIP[Tag added date],MONTH)<12))
这是最好的方法吗?我的另一个想法是尝试动态创建一个包含所有计算列的新表,例如
Month Type Calculated column for above
但不确定是否有其他方法。
解决方案
A Count = COUNTROWS ( 'A' )
A Count Rolling 12 months =
VAR CurrentEndOfMonth = EOMONTH ( MAX ( 'Date'[Date] ), 0 )
RETURN
CALCULATE (
[A Count],
DATESINPERIOD ( 'Date'[Date], CurrentEndOfMonth, -11, MONTH )
)
假设关系“日期”-1:N->“A”。
另外,我不完全确定您的预期输出是什么。2018 年 12 月比 2019 年 2 月早 2 个月。因此,根据滚动 12 个月的逻辑,我预计“苹果”和“胡萝卜”的计数均为 1。因此,如果上述措施不是您所期望的,您需要进一步澄清您想要实现的目标。
推荐阅读
- desktop-application - 如何为桌面 PWA 打开其他应用程序窗口?
- c# - 如何将 Sharepoint 中的 pplEditor 重写为可在 ASP.NET 中使用的内容
- android - 使用 Android Fused 提供程序时损坏的经度
- node.js - 如何在stopmit node.js中检查AMQ队列中是否没有消息可以消费
- sql - 尝试将数据扁平化为 oracle 中的列
- django - 如何使用模型表单自动填充作者(视频上传)
- c# - 无法将类型隐式转换为 Func
- dns - 如何在 CloudFoundry 环境中创建安全的内部路由(Swisscom AppCloud)
- python - 如何删除多行文本中特定字符或字符串之前的文本?
- node.js - NodeJS 和 PCAP,忽略 PCAP 发送的数据包