You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Power BI中用LASTDATE与IF函数计算产品类型列的方法求助

解决方案:创建Product Type计算列

核心思路

按Product Code分组,先获取每个产品的最新Movement Date,再匹配该日期对应的To Location,最后根据位置标记产品类型。

DAX计算列公式

Product Type = 
VAR LatestDate = CALCULATE(LASTDATE('Table'[Movement Date]), ALLEXCEPT('Table', 'Table'[Product Code]))
VAR LatestLocation = CALCULATE(MAX('Table'[To Location]), ALLEXCEPT('Table', 'Table'[Product Code]), 'Table'[Movement Date] = LatestDate)
RETURN
IF(LatestLocation = "NSW", "Product A", IF(LatestLocation = "WA", "Product B", BLANK()))

公式说明

  • LatestDate:通过ALLEXCEPT保留当前行的Product Code上下文,计算该产品的最新移动日期
  • LatestLocation:筛选当前产品且移动日期等于最新日期的记录,提取对应的目标位置(用MAX是为了兼容同一天多条记录的情况,若数据确保最新日期唯一,用MIN或直接取值效果一致)
  • RETURN逻辑:根据最新位置返回对应标记,非NSW/WA的情况返回空值

示例数据验证

结合你提供的示例表,计算结果如下:

Product CodeProduct Type
aaa123Product B
aaa123Product B
aaa123Product B
bbb123Product A
bbb123Product A
bbb123Product A
ccc123(空值)
ccc123(空值)
ccc123(空值)

内容的提问来源于stack exchange,提问作者Andrew A

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 18:55:20