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

SSRS矩阵需求:统计学生数超35的时段数量

解决SSRS矩阵统计学生人数超35时段数量的问题

问题描述

现有SSRS矩阵用于统计各时段学生数量,需新增列/汇总值,统计学生人数超过35的时段总数。此前尝试的公式均无效,包括:

  • =Count(IIF(Fields!SN.Value)>"35", 1, 0)
  • =Count(IIF(Fields![Count(SN)].Value, "Per">"35",1,0))
  • =Count(IIF(Fields![Count(SN)].Value>"35",1,0))
  • =IIF(Count(Fields![Count(SN)].Value>"35",1,0))

错误原因分析

  1. 误用Count函数:Count会统计所有非空值,无法区分是否符合条件;需用Sum累加符合条件的标记值。
  2. 类型比较错误:将数字35以字符串形式(加引号)比较,导致逻辑判断偏差。
  3. 语法错误:部分公式存在括号不匹配、参数缺失等问题。

正确实现方案

场景1:先标记单时段是否超35,再汇总总数

如果需要在每个时段行显示是否满足条件,再在矩阵底部汇总符合要求的时段数:

  1. 在矩阵列组中新增一列,单元格表达式设置为:
    =IIF(Fields!Count_SN.Value > 35, 1, 0)
    
    注:Count_SN替换为你矩阵中实际显示各时段学生人数的聚合字段名
  2. 在矩阵的总计行,对上述新增列的单元格设置表达式:
    =Sum(IIF(Fields!Count_SN.Value > 35, 1, 0), "你的矩阵数据集名称")
    
    注:第二个参数为你报表的数据集名称,确保统计范围覆盖所有时段

场景2:直接显示符合条件的时段总数

如果无需逐行标记,直接在矩阵旁新增文本框或列显示总数,表达式为:

=Sum(IIF(Fields!Count_SN.Value > 35, 1, 0), "你的矩阵数据集名称")

关键注意事项

  • 确保Count_SN是数值类型的聚合字段(如通过Count(Fields!SN.Value)生成的统计值),避免用字符串字段做数值比较。
  • 数据集名称需与报表数据面板中的数据集名称完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 23:47:16