开发者社区> 问答> 正文

sql表进行数据统计,由第一个表统计得到第二个表

面试有一个这样的题目:一张教师表,记录了每一个老师在星期几有课,表结构为teacher

screenshot

怎么用sql统计称如下的表,每一天每位老师总共有多少课:

screenshot

该怎么统计称下面这个表呢?面试官说可以用case when来统计。我想的是用group by先分组,然后再在组内进行统计,如果用mysql怎么统计呢?

展开
收起
吴孟桥 2016-06-16 17:31:00 2185 0
1 条回答
写回答
取消 提交回答
  • 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

    2019-07-17 19:41:34
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
SQL Server 2017 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载