钮钴禄小懒子 发表于 2024-4-16 19:56:22

【9.0.102.0】科目考试情况人数统计

场景是学员考驾驶证,同一个科目可约考多次,现需求是如何根据预考记录统计各个科目考试情况?比如科一合格/不合格/未考人数、科二合格/不合格/未考人数,合格率



Simon.Sun 发表于 2024-4-16 19:56:23

SQL 视图的话您可以网上去检索相关方案。
服务端命令的话,先按照人和科目进行分组,然后循环查询出的结果,循环去表里查询数据,查询是用人和科目作为过滤条件,按照约考日期降序排序,取第一条。
再把查询的结果汇总起来,然后当做 JSON 数据源给报表使用。

Simon.Sun 发表于 2024-4-17 10:21:41

您好,这个场景,这边考虑的是使用报表模块的矩表去做,效果如下:

如果您是想要这样的效果,实现关键步骤如下:
1、创建矩表,行列分组设置如下:


2、给矩表添加一列,计算合格率,合格率的计算依赖了 AggregateIf 这个聚合函数,主要逻辑是统计出参加了考试的总人数和合格的人数,然后做除法。


钮钴禄小懒子 发表于 2024-4-17 13:39:49

本帖最后由 钮钴禄小懒子 于 2024-4-17 13:41 编辑

Simon.Sun 发表于 2024-4-17 10:21
您好,这个场景,这边考虑的是使用报表模块的矩表去做,效果如下:

如果您是想要这样的效果,实现关键步 ...
这个统计的是考试人次,并不是人数,如下图,其实只有两个学员参与考试而已,像科目一,合格人数为1,不合格为1,未考为0

如下图

Simon.Sun 发表于 2024-4-17 17:04:39

本帖最后由 Simon.Sun 于 2024-4-17 17:07 编辑

这样的话,我的想法是处理下数据,比如每个人,对应科目,只保留最后一次考试的记录,这样去统计就会按照人来统计了。
处理数据这个可以通过服务端命令或者 SQL 视图去做。

钮钴禄小懒子 发表于 2024-4-18 17:32:02

Simon.Sun 发表于 2024-4-17 17:04
这样的话,我的想法是处理下数据,比如每个人,对应科目,只保留最后一次考试的记录,这样去统计就会按照人 ...

能否具体说下,如何处理数据吗?
页: [1]
查看完整版本: 【9.0.102.0】科目考试情况人数统计