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

基于其他字段计算同列日期差的DAX(Power BI)问题

基于Field2标识计算Field1日期差的解决方案

一、Excel 操作步骤

  • 先通过匹配函数获取对应标识的日期:
    • 获取标识b的日期:=VLOOKUP("b", $A:$B, 2, FALSE)
    • 获取标识c的日期:=VLOOKUP("c", $A:$B, 2, FALSE)
  • 用DATEDIF计算日期间隔(按天为例):
    完整公式:=DATEDIF(VLOOKUP("b", $A:$B, 2, FALSE), VLOOKUP("c", $A:$B, 2, FALSE), "d")
    • 参数说明:第三个参数"d"表示按天计算,替换为"m"是按月、"y"是按年。
  • 若需批量计算多组标识差,可先将所有标识列出来,再用上述公式批量引用。

二、SQL 实现代码

假设数据表名为target_table,字段为Field2(分组标识)、Field1(日期字段),计算c-b的日期差:

SELECT
    CONCAT(t2.Field2, '-', t1.Field2) AS difference_label,
    DATEDIFF(t2.Field1, t1.Field1) AS date_diff_days
FROM
    target_table t1
JOIN
    target_table t2
WHERE
    t1.Field2 = 'b' AND t2.Field2 = 'c';

如果要计算所有两两标识的日期差,可修改WHERE条件为t2.Field2 != t1.Field2,并添加排序避免重复计算。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 08:06:23