2019春招面试题总结-05

问题:已知一张用户表,请你使用一条sql语句分别统计男女人数

解析:

  方案一:

    sql语句 select s.sex,count(s.sex) from student s group by sex;

  方案二:

    sql语句 select sum(case when sex=0 then 1 else 0 end)女生人数,sum(case when sex=1 then 1 else 0 end)男生人数

问题拓展:请你分别统计各班总人数,男女总人数,各自男女比例

    sql语句 select class 班级,count(*)总人数,

         select sum(case when sex=0 then 1 else 0 end)女生人数,

         select sum(case when sex=0 then 1 else 0 end)*1.0/count(*)女生所占比例,

         sum(case when sex=1 then 1 else 0 end)男生人数,

         sum(case when sex=1 then 1 else 0 end)*1.0/count(*)男生所占比例

         from student

         group by class

         order by class asc;

posted @ 2019-07-16 09:37  helloworldmybokeyuan  阅读(88)  评论(0编辑  收藏  举报