已知student表中(学号,姓名,性别,年龄,班号)。
求各个班级的男生人数,女生人数和总人数

解决方案 »

  1.   


    select Count(1) 总人数
          ,sum(case when 性别='男' then 1 else 0 end) 男生人数
          ,sum(case when 性别='男' then 1 else 0 end) 女生人数
    from Student
      

  2.   


    select Count(1) 总人数
          ,sum(case when 性别='男' then 1 else 0 end) 男生人数
          ,sum(case when 性别='女' then 1 else 0 end) 女生人数
    from Student
      

  3.   


    [code=SQL]
    SELECT
    SUM(CASE 性别 WHEN '男' THEN 1 ELSE 0 END) AS 男生人数,
    SUM(CASE 性别 WHEN '女' THEN 1 ELSE 0 END) AS 女生人数,
    SUM(学号) AS 总人数
    FROM STUDENT[/code]
      

  4.   

    SELECT
    SUM(CASE 性别 WHEN '男' THEN 1 ELSE 0 END) AS 男生人数,
    SUM(CASE 性别 WHEN '女' THEN 1 ELSE 0 END) AS 女生人数,
    COUNT(学号) AS 总人数
    FROM STUDENT
      

  5.   

    SELECT *,
    SUM(case when 性别='男' then 1 else 0 end) AS '男生人数',
    SUM(case when 性别='女' then 1 else 0 end) AS '女生人数',
    SUM(学号) AS 总人数 
    FROM Student
      

  6.   

    select 班号,性别,count(*) 人数 from  student 
    group by 班号,性别 order by 班号
    compute sum(班号)
      

  7.   

    select 班号,Count(*) 总人数
          ,sum(case when 性别='男' then 1 else 0 end) 男生人数
          ,sum(case when 性别='男' then 1 else 0 end) 女生人数
    from Student
    group by 班号
      

  8.   

    select
     班号,
     Count(1) 总人数,
     sum(case 性别 when '男' then 1 else 0 end) 男生人数,
     sum(case 性别 when '女' then 1 else 0 end) 女生人数
    from
     Student
    group by
     班号
      

  9.   

    select
     班号,
     Count(1) 总人数,
     sum(case 性别 when '男' then 1 else 0 end) 男生人数,
     sum(case 性别 when '女' then 1 else 0 end) 女生人数
    from
     Student
    group by
     班号