1、有如下数据,要求查询每个班最低分和最高分,并将最高分与最低分显示为同一列

ID Student CourseName Score
1 张三 English 80
2 张三 Math 70
3 张三 Chinese 50
4 李四 English 90
5 李四 Chinese 70
6 王五 Math 60
7 王五 English 70
8 赵六 Chinese 80
9 赵六 Math 60
10 赵六 English 90

这是我的解决方案,如有更好的,欢迎指点:

select Student,CourseName,Score
from(
  select Student,CourseName,Score,
  rnDesc=ROW_NUMBER() over(partition by CourseName order by Score desc),--按照分数降序给个编号(如果是按照学生的话将over()中的CourseName改为

--Student 即可)
  rnAsc=ROW_NUMBER() over(partition by CourseName order by Score Asc)--按照分数升序给个编号
  from dbo.Score

)T where T.rnAsc=1 or t.rnDesc=1--取按升序的第一个和按降序的第一个即为最低分和最高分

2、如题:

ID    Numb  type

1	0001	in
2 0001 in
3 0001 out
5 0001 in
6 0002 in
7 0002 out
8 0002 in
9 0002 in
10 0003 out
11 0003 out
12 0004 in

要求查出的结果格式为:

numb    in     out
0001 3 1
0002 3 1
0003 0 2
0004 1 0

sql:

select numb,

sum(case type when 'in' then 1 else 0 end)as tIn,--统计type为"in"的数量,用sum而非count

sum(case type when 'out' then 1 else 0 end)as tOut,--统计type为"out"的数量,用sum而非count

from table1

group by numb

感觉挺有意思的SQL题目的更多相关文章

  1. 一次非常有意思的sql优化经历

    补充:看到这么多朋友对sql优化感兴趣,我又重新补充了下文章的内容,将更多关于sql优化的知识分享出来, 喜欢这篇文章的朋友给个赞吧,哈哈,欢迎交流,共同进步. 2015-4-30补充:非常感觉编辑的 ...

  2. 现在觉得IT还挺有意思

    前两天刚刚接触编程,用的是C#.开始确实枯燥,但是今天的感觉就好多了,还挺有意思.根据老师讲的课程自己编写了小程序,运行起来还不错.在这里分享下. 关于时间安排的小程序: int sj; int aa ...

  3. 一次非常有意思的 SQL 优化经历

    我用的数据库是mysql5.6,下面简单的介绍下场景 课程表 create table Course( c_id int PRIMARY KEY, name varchar(10) ) 数据100条 ...

  4. [转]一次非常有意思的sql优化经历

    From :http://www.cnblogs.com/tangyanbo/p/4462734.html 补充:看到这么多朋友对sql优化感兴趣,我又重新补充了下文章的内容,将更多关于sql优化的知 ...

  5. MySQL 一次非常有意思的SQL优化经历:从30248.271s到0.001s

    转载自:https://www.toutiao.com/i6668275333034148356 一.背景介绍 用的数据库是mysql5.6,下面简单的介绍下场景 课程表: 数据100条 学生表: 数 ...

  6. css 题目笔记(本文收集了一些个人觉得比较有意思的css题目,欢迎大家给出自己的解答)

    1.本文收集了一些个人觉得比较有意思的css题目,欢迎大家给出自己的解答 P标签的最大宽度不可以大于H2标签文字宽度的10% 这里应该是P标签的最大宽度由前面的匿名内联元素宽度(就是大字号文字宽度)决 ...

  7. PCB 挺有意思的基数排序----C#代码实现

    今天在头条看一个很有意思的排序算法[基数排序],以前所学习的排序算法都是基于数值对比的方式排序的,而这个算法挺有意思的非常独特.但从网上看到的例子通常是对个位,十位处理,并转为对应的桶索引的方式实现, ...

  8. LeetCode SQL题目(第一弹)

    LeetCode SQL题目 注意:Leetcode上的SQL编程题都提供了数据表的架构程序,只需要将它贴入本地数据库即可调试自己编写的程序 不管是MS-SQL Server还是MySQL都需要登陆才 ...

  9. Oracle语法 及 SQL题目(一)

    目录 课例复制 SQL题目一 SQL题目二 SQL题目三 笔记 课例复制 OCM 全称:Oracle Certified Master 认证大师 含义:Oracle 原厂推出的数据库方向最高级别认证 ...

随机推荐

  1. C iOcp

    #include <winsock2.h> //#include <windows.h> #include <stdio.h> #define PORT 5150 ...

  2. 以正方教务系统为例,用php模拟登陆抓取课表、空教室

    课程格子和超级课程表这两个应用,想必大学生都很熟悉,使用自己的学号和教务系统的密码,就可以将自己的课表导入,随时随地都可以在手机上查看. 其实稍微了解一点php的话,我们也可以做一个类似这样的web ...

  3. DatabaseMetaData的用法(转)

    http://blog.csdn.net/sdliubo/article/details/6546889

  4. 通过focusInEvent和eventFilter两种方法改写控件颜色(自定义控件就是这么来的)

    http://www.cnblogs.com/hicjiajia/archive/2012/05/30/2526768.html http://www.cnblogs.com/hicjiajia/ar ...

  5. css em

    em与px换算 任意浏览器的默认字体高度16px(16像素).所有未经调整的浏览器都符合: 1em=16px.那么,12px=0.75em,10px=0.625em.为了简化font-size的换算, ...

  6. 清理8组nodes中表的历史数据,平均每个node中的表有1.5亿条记录,需要根据date_created字段清理8000W数据记录,这个字段没有索引。

    清理8组nodes中表的历史数据,平均每个node中的表有1.5亿条记录,需要根据date_created字段清理8000W数据记录,这个字段没有索引. 环境介绍  线上磁盘空间不足,truncate ...

  7. SQL Server索引进阶:第五级,包含列

    原文地址: Stairway to SQL Server Indexes: Level 5, Included Columns 本文是SQL Server索引进阶系列(Stairway to SQL ...

  8. 原生js下拉刷新

    <!DOCTYPE html><html> <head>        <meta charset="UTF-8">         ...

  9. iOS 10 创建iMessage App

    原文作者 澳大利亚19岁少年--Davis Allie ----原文地址 时值中秋佳节, 送给出门在外的程序猿们 ! 骚年们, 自己写个表情包斗图可否 ! 斗-seal.svg.png 第一. 介绍 ...

  10. 驴吃胡萝卜问题——牛客/FEI

    一个商人骑一头驴要穿越1000公里长的沙漠,去卖3000根胡萝卜.已知驴一次性可驮1000根胡萝卜,但每走1公里又要吃掉1根胡萝卜.问:商人最多可卖出多少胡萝卜? 一个商人骑一头驴要穿越1000公里长 ...