CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

急救,如何用SQL语句实现下面功能?

楼主terryjim(jim)2006-05-02 21:09:21 在 MS-SQL Server / 基础类 提问

一个表中一,两个字段,department,score,表示院系号及考试分数,现想按院系分类查询各分数区间统计数量,如:  
  统计90-100分有多少个,80-90分的有多少个,不及格的有多少个  
  不知如何解决 问题点数:50、回复次数:5Top

1 楼shaoshaoh(汤勺)回复于 2006-05-02 21:15:37 得分 0

一个表中一,两个字段,department,score,表示院系号及考试分数,  
   
  现想按院系分类查询各分数区间统计数量,如:  
  统计90-100分有多少个,80-90分的有多少个,不及格的有多少个  
  不知如何解决  
   
  select   count(score)    
  form   table  
  where   department   =   math   and   score   >90  
   
  照这个样子写三个吧,  
  本人技术也不行,  
  就能想到这个样子  
  希望对你有启发……Top

2 楼scmail81(琳·风の狼(修罗))回复于 2006-05-02 21:15:49 得分 45

select   department,  
  sum(case   when   score>90   and   score<=100   then   1   else   0   end)   as   '90-100',  
  sum(case   when   score>80   and   score<=90   then   1   else   0   end)   as   '80-90',  
  sum(case   when   score<60   then   1   else   0   end)   as   '不及格'  
  from   表  
  group   by   departmentTop

3 楼terryjim(jim)回复于 2006-05-02 21:27:26 得分 0

唉,我真是笨啊,多谢了!Top

4 楼zhenmeiyisi(。。。)回复于 2006-05-02 21:28:24 得分 5

试试这个   。。。  
   
  SELECT   department,   COUNT(*)   AS   Expr1  
  FROM   tb  
  WHERE   (score   >=   90)   AND   (score   <=   100)  
  GROUP   BY   department  
  UNION   ALL  
  SELECT   department,   COUNT(*)   AS   Expr1  
  FROM   tb  
  WHERE   (score   >=   80)   AND   (score   <90)  
  GROUP   BY   departmentTop

5 楼terryjim(jim)回复于 2006-05-02 21:36:05 得分 0

呵呵,还是scmail81老兄的方法简单明了些,多谢大家了Top

相关问题

关键词

得分解答快速导航

  • 帖主:terryjim
  • scmail81
  • zhenmeiyisi

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo