Power BI中按入职时间分组的同时间线平均DTC折线图实现问询
解决方案
前置说明
你之前无法使用DatesinPeriod/Datesbetween的核心原因是时间智能函数要求引用的日期列必须连续无重复,直接调用事实表中存在重复值的Hire Date字段会触发报错,以下方案无需调用时间智能函数,也不需要创建多个子表即可实现需求。
步骤1:补充必要计算字段
首先在你的原始数据表中新增2个计算列:
(1)入职批次字段
用于区分不同入职季度的员工批次,作为折线图的分组系列:
入职批次 = YEAR([Hire Date]) & "Q" & CEILING(MONTH([Hire Date])/3,1)
计算结果格式为2020Q1、2020Q2,可直接作为分类维度使用。
(2)入职后季度数字段
用于标记当前案件属于员工入职后的第几个季度,作为折线图的X轴维度:
注意:如果原表没有「结案日期」字段,可先新增计算列
结案日期 = [案件受理日期] + [DaysToClose],替换公式中的对应字段即可
入职后季度数 = VAR 入职年 = YEAR([Hire Date]) VAR 入职季 = CEILING(MONTH([Hire Date])/3,1) VAR 结案年 = YEAR([结案日期]) VAR 结案季 = CEILING(MONTH([结案日期])/3,1) RETURN (结案年 - 入职年)*4 + (结案季 - 入职季) + 1
返回值为1代表入职当季,2代表入职后第二个季度,以此类推。
步骤2:创建聚合度量值
直接编写平均结案天数的度量值,按需过滤已结案状态即可:
Avg DTC = CALCULATE( AVERAGE('你的表名'[DaysToClose]), '你的表名'[CasesStatus] = "已结案" // 不需要过滤已结案可删除此行 )
步骤3:配置折线图
直接拖拽字段即可生成符合需求的图表:
- X轴:选择「入职后季度数」字段
- 图例/系列:选择「入职批次」字段
- Y轴:选择「Avg DTC」度量值
可选优化
如果需要按自然季度展示而非入职后第N季度,可额外新增「案件所属季度」计算列,替换X轴字段即可。
内容的提问来源于stack exchange,提问作者Shivam Sarin
相关产品推荐
相关产品推荐

