面试有一个这样的题目:一张教师表,记录了每一个老师在星期几有课,表结构为teacher
怎么用sql统计称如下的表,每一天每位老师总共有多少课:
该怎么统计称下面这个表呢?面试官说可以用case when来统计。我想的是用group by先分组,然后再在组内进行统计,如果用mysql怎么统计呢?
select id,
sum(case when week=1 then 1 else 0 end) as 星期一 ,
sum(case when week=2 then 1 else 0 end) as 星期二 ,
sum(case when week=3 then 1 else 0 end) as 星期三
from
teacher
group by id
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。