题解 | 统计所有课程参加培训人次

统计所有课程参加培训人次

https://www.nowcoder.com/practice/98aad5807cf34a3b960cc8a70ce03f53

select 
    sum(case when course like '%course1%' then 1 else 0 end)+
    sum(case when course like '%course2%' then 1 else 0 end)+
    sum(case when course like '%course3%' then 1 else 0 end) staff_nums
from cultivate_tb

其他解法:把每名员工上过的课程数目相加,课程数目=逗号数目+1=length(course) - length(replace(course,',','')) + 1,不过要考虑course为空值的情况。

我认为我的解法好,因为还计算了每门课的上课人次,保留了更多信息。且无需考虑为空值的情况。

全部评论

相关推荐

流浪的神仙:无恶意,算法一般好像都得9硕才能干算法太卷啦
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务