powerbi - DAX 在 ValidFrom 列中查找日期
问题描述
我有两(2)张桌子
表名:X
ID Name ValidFrom Property
A-----Test1-----01.01.2010---------30
A-----Test1-----01.01.2015---------60
B-----Test1-----01.01.1900---------30
B-----Test2-----01.01.2018---------60
表名:Y
ID Date
A---01.01.2010
A---01.02.2010
A---01.03.2015
A---01.04.2015
理想情况下,我想将计算列添加到表 Y中,它使用表 X中的 ID 和 ValidFrom 查找 ID 和日期。在此示例中,表 X 中的第 1 行将返回所有日期 >= 01.01.2010 和日期 < 01.01.2015 的数据行。结果将是这样的:
表名:Y(新)
ID Date Name Property
A---01.01.2010----Test1------30
A---01.02.2010----Test1------30
A---01.03.2015----Test1------60
A---01.04.2015----Test1------60
任何帮助将不胜感激
解决方案
目前尚不清楚该Name
列是如何生成的,但是Property
一旦您Name
在 table 中拥有该列,您可以通过以下方式获取该列Y
:
Property =
VAR LastValid =
CALCULATE (
MAX ( X[ValidFrom] ),
FILTER (
ALL ( X[ValidFrom] ),
X[ValidFrom] <= EARLIER ( Y[Date] )
)
)
RETURN
LOOKUPVALUE (
X[Property],
X[ID], Y[ID],
X[Name], Y[Name],
X[ValidFrom], LastValid
)
该LastValid
变量查找小于或等于当前行中日期的最新日期。然后你将它与ID
and一起使用Name
来查找Property
from table X
。
推荐阅读
- laravel - 如何获取已存储在另一个模型中的名称 ID,并使用名称 ID 在 laravel 的数据透视表数据库中存储值?
- android - 如何将 Android 应用程序带到前台?(API 级别 27+)
- python - 所有参数都应具有相同的长度。参数 `y` 的长度是 6,而前面的参数 ['year'] 的长度是 100
- sql - 使用 EntityManager / Hibernate 进行批量更新
- rust - 关于 Rust 生命周期语法的说明
- javascript - 如何使用 jQuery / Axios 执行 PUT 请求?它总是返回错误 400
- imagemagick - 使用 Imagemagick 将 PDF 转换为 TIFF,使页面的一部分变成黑色
- c# - 报告查看器。垂直合并组中的单元格
- flutter - Flutter CachedNetworkImage 不会留下占位符
- html - 如何在视频中启用声音