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

MS Access中统计多列内人员姓名出现次数的实现方案问询

MS Access 实现返工次数统计方案

首先我们先约定表和字段的指代名称,你可以替换为自己实际的命名:

  • 存储人员姓名的表:员工表,姓名字段为 姓名
  • 存储返工记录的表:返工记录表,需统计的字段为 original_worker_1 到 original_worker_10

步骤1:创建联合查询打平多列字段

首先需要把分散在10个original_worker_*字段的姓名合并为单列的结果集,方便后续统计。
在Access中新建查询,关闭弹出的「显示表」窗口,切换到SQL视图,粘贴以下代码:

SELECT original_worker_1 AS 员工姓名 FROM 返工记录表 WHERE original_worker_1 IS NOT NULL
UNION ALL
SELECT original_worker_2 AS 员工姓名 FROM 返工记录表 WHERE original_worker_2 IS NOT NULL
UNION ALL
SELECT original_worker_3 AS 员工姓名 FROM 返工记录表 WHERE original_worker_3 IS NOT NULL
UNION ALL
SELECT original_worker_4 AS 员工姓名 FROM 返工记录表 WHERE original_worker_4 IS NOT NULL
UNION ALL
SELECT original_worker_5 AS 员工姓名 FROM 返工记录表 WHERE original_worker_5 IS NOT NULL
UNION ALL
SELECT original_worker_6 AS 员工姓名 FROM 返工记录表 WHERE original_worker_6 IS NOT NULL
UNION ALL
SELECT original_worker_7 AS 员工姓名 FROM 返工记录表 WHERE original_worker_7 IS NOT NULL
UNION ALL
SELECT original_worker_8 AS 员工姓名 FROM 返工记录表 WHERE original_worker_8 IS NOT NULL
UNION ALL
SELECT original_worker_9 AS 员工姓名 FROM 返工记录表 WHERE original_worker_9 IS NOT NULL
UNION ALL
SELECT original_worker_10 AS 员工姓名 FROM 返工记录表 WHERE original_worker_10 IS NOT NULL

保存这个查询,命名为 所有返工记录_打平。

步骤2:创建统计查询得到最终结果

再新建一个查询,同样切换到SQL视图,粘贴以下代码:

SELECT 
    员工表.姓名,
    COUNT(所有返工记录_打平.员工姓名) AS 被返工总次数
FROM 员工表 
LEFT JOIN 所有返工记录_打平 ON 员工表.姓名 = 所有返工记录_打平.员工姓名
GROUP BY 员工表.姓名
ORDER BY COUNT(所有返工记录_打平.员工姓名) DESC;

运行这个查询就能得到你需要的结果:所有人员的姓名、对应被返工的总次数,没有返工记录的人员也会显示次数为0。

后续制作条形图

直接选中这个统计查询的结果,在Access的「插入」选项卡中选择条形图即可生成可视化图表,也可以将查询结果导出到Excel中制作图表。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 07:06:07