zoukankan      html  css  js  c++  java
  • SQL练习1:统计班级男女生人数

    1 有如下表格和数据:
     2     ID          Name       Class      Sex
     3     ----------- ---------- ---------- ----
     4     1           张1         一班         男
     5     2           张2         一班         男
     6     3           张3         二班         女
     7     4           张4         一班         男
     8     5           张5         二班         女
     9     6           张6         二班         女
    10     7           张7         二班         男
    11     8           张8         一班         女
    12 现要求通过SELECT语句查询出如下结果:
    13 
    14     班级         男           女
    15     ---------- ----------- -----------
    16     二班         1           3
    17     一班         3           1
    18 
    19 
    20 use studb
    21 go
    22 create table TestTable
    23 (
    24     ID int identity(1,1primary key,
    25     [Name] varchar(10),
    26     [Class] varchar(10),
    27     Sex char(2)
    28 )
    29 
    30 insert TestTable values('张1','一班','')
    31 insert TestTable values('张2','一班','')
    32 insert TestTable values('张3','二班','')
    33 insert TestTable values('张4','一班','')
    34 insert TestTable values('张5','二班','')
    35 insert TestTable values('张6','二班','')
    36 insert TestTable values('张7','二班','')
    37 insert TestTable values('张8','一班','')
    38 
    39 select * from TestTable
    40 
    41 --答案1:
    42 select class 班级, count(case when Sex='' then 1 endas 男,
    43 count(case when Sex='' then 1 endas 女 
    44 from TestTable group by class
    45 --答案2:
    46 SELECT 班级, SUM(男) AS 男, SUM(女) AS 女 FROM (
    47 SELECT Class AS 班级, COUNT(Sex) AS 男, 0 AS 女 FROM TestTable
    48 WHERE Sex=''
    49 GROUP BY Class
    50 UNION
    51 SELECT Class AS 班级, 0 AS 男, COUNT(Sex) AS 女 FROM TestTable
    52 WHERE Sex=''
    53 GROUP BY Class
    54 ) A
    55 GROUP BY 班级

     

    本文引用自:http://www.cnblogs.com/seerlin/archive/2009/02/17/1392230.html

  • 相关阅读:
    一行命令搞定node.js 版本升级
    doesn't contain a valid partition table 解决方法
    debian kill 进程等命令
    FastDFS配置说明(中英文)
    FastDFS问题汇总
    FastDFS常见命令
    FastDFS安装配置手册
    windows 与Linux 互传文件
    FtpClient中文乱码问题解决
    windows 配置host
  • 原文地址:https://www.cnblogs.com/johnsmith/p/2167580.html
Copyright © 2011-2022 走看看