如何在PowerBI表格视觉对象中实现跨月份唯一计数?
PowerBI 实现学生跨月仅计数一次的解决方法
核心思路:让每个学生仅在其首次出现的月份被计数,后续重复出现的月份不再统计,这样月度数值求和结果将与全局去重的总计一致。
DAX度量值实现:
- 创建度量值计算每个学生的首次出现月份:
首次出现月份 = CALCULATE( MIN('表名'[month]), ALLEXCEPT('表名', '表名'[student_id]) )- 创建最终的计数度量值:
新学生计数 = VAR 当前月份 = SELECTEDVALUE('表名'[month]) RETURN CALCULATE( DISTINCTCOUNT('表名'[student_id]), FILTER( ALL('表名'), '表名'[首次出现月份] = 当前月份 ) )(替换代码中的
'表名'为你实际使用的表名称)应用步骤:
- 删除表格中原有
Count (Distinct) student-id字段 - 将
month字段和新创建的新学生计数度量值添加到表格视觉对象中 - 此时每个月份仅统计首次出现的学生,月度数值求和后将与总计(全局去重的学生总数)一致,即显示为210。
- 删除表格中原有
示例数据验证:
针对你提供的示例数据,应用度量值后各月计数为:- Jan: 3(学生100、101、102)
- Feb: 1(学生104)
- Mar: 1(学生103)
总计为5,与全局去重的学生数一致,月度求和3+1+1=5,符合预期效果。
内容的提问来源于stack exchange,提问作者weizer
相关产品推荐
相关产品推荐

