SQL 刷题/【蚂蚁】统计公司所有课程培训人次
上一题下一题中等通过率 100%

【蚂蚁】统计公司所有课程培训人次

聚合函数CASE WHEN字符串函数数据清洗面试真题

题目描述

来源:蚂蚁 SQL 面试真题

某公司共开设 3 门培训课程,员工按照自愿原则可以参加 0 至 3 门课程,每门课程每位员工最多参加一次。员工参加的课程以英文逗号分隔,保存在同一个 course 字段中;未参加培训的员工,其 course 为 NULL。

数据表

cultivate_tb 员工培训信息表

字段类型说明
info_idBIGINT培训信息 ID
staff_idBIGINT员工 ID
courseVARCHAR参加的课程,多个课程以英文逗号分隔;未参加时为 NULL

题目要求

请统计该公司所有课程的参加培训总人次。

  • 一名员工参加一门课程计 1 人次。
  • 一名员工参加多门课程时,每门课程分别计 1 人次。
  • course 为 NULL 或空字符串时计 0 人次。
  • 结果只输出一行。

期望输出列

列名说明
staff_nums所有课程的参加培训总人次

数据样例

当前运行环境
info_idPKBIGINTstaff_idBIGINTcourseVARCHAR(100)
1011course1,course2
1022course2
1033course1,course3
1044course1,course2,course3
1055course3
1066NULL
1077course1,course2
输入数据显示 7 / 7
SQL 编辑器正在保存草稿...
正在加载 SQL 编辑器...

运行你的 SQL 查询后,结果将显示在这里