我想在power bi中显示给定月份的活跃租金详情。我有一张桌子,里面有租房细节。在该表中,我有开始日期,结束日期和几个月。因此,当我选择一个月的权力时,我想要显示当前使用power bi的租金
例
House A 1.1.2019 31.12.2019 12 House B 1.2.2019 31.05.2019 03 House C 1.4.2019 31.12.2019 08
如果我选择月份6月结果应该是A楼和C楼,如果我选择3月结果应该是全部3(A,B,C)
有人能用力量帮我吗?
请在这里找到我的解决方案 - (https://app.powerbi.com/groups/me/reports/b12bf4b6-14f1-41e1-9bf9-832509dce3e9?ctid=8ac0e5ca-0835-4daf-af23-c940683adbef)
我使用上面的解决方案得到表。我需要将subscription_id与其他表匹配并获取数据但目前不允许。任何解决方案
让我们假设你有一个名为'Rentals'的表中的数据
Rentals表包含以下信息(但不限于):
[位置] | [Rent_Start] | [Rent_End]
第一步:
创建一个Calendar表:
SELECTCOLUMNS(
GENERATESERIES(
MIN(Rentals[Rent_Start]);
MAX(Rentals[Rent_End])
);
"Date"; [Value]
)
将两个计算列添加到日历表[月份名称]和[月份编号]
步骤2:将租赁表与日历交叉连接到新表中,添加一个标志列,指示该位置是否正在使用中。在未使用位置时筛选行,并选择实际需要的列:
RunningTime =
SELECTCOLUMNS(
FILTER(
ADDCOLUMNS(
CROSSJOIN(Rentals; Calendar);
"In_Use";
IF([Date] >= [Rent_Start] && [Date] <= [Rent_End]; 1; blank() )
);
[In_Use] = 1
);
"Location"; [Location];
"Start"; [Rent_Start];
"End"; [Rent_End];
"Date"; [Date]
)
步骤3:在Calendar [Date]和RunningTime [Date]列之间创建1:*关系。现在,您可以使用月份名称从日历创建切片器,在带有RunningTime [Location]的可视化表中,您无法在选择特定月份时查看正在使用的位置。
(按“正确”顺序排序[月份名称]需要月份编号,而不是按字母顺序排序)
编辑1:让我们看看,据我所知,我认为我的代码可以满足您的需求。如果以下说明不适合您,请通过上传您的模型(或其示例)回复我。此外,不确定您使用的房屋和总入住率之间的差异是什么意思。
据我所知,我的[Rent_Start]和[Rent_End]对应于你的列[start_date]和[end_date],两者都是日期时间格式。所以我不明白问题是什么?
如果您只是想知道有多少房屋在使用,那么您需要这个措施:
Houses in use =
DISTINCTCOUNT('RunningTime'[Location])
我的解决方案中需要这三列,但您可以拥有更多。
然后我最终得到一个看起来像这样的新表:
这个新表链接到日历,如下所示:
然后在可视化表中,我使用“RunningTime”表中的[Location],[Start]和[End]列。我在Calendar表中创建了一个基于Month_Name的切片器,就像这样(注意:在这张图片中没有选择月份):
如果我现在选择1月,我会得到以下内容:
如果我选择March,我会得到以下信息: