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. 1 0001 in
  2. 2 0001 in
  3. 3 0001 out
  4. 5 0001 in
  5. 6 0002 in
  6. 7 0002 out
  7. 8 0002 in
  8. 9 0002 in
  9. 10 0003 out
  10. 11 0003 out
  11. 12 0004 in

要求查出的结果格式为:

  1. numb in out
  2. 0001 3 1
  3. 0002 3 1
  4. 0003 0 2
  5. 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. python读取中文文件编码问题

    python 读取中文文件后,作为参数使用,经常会遇到乱码或者报错asii错误等. 我们需要对中文进行decode('gbk') 如我有一个data.txt文件有如下内容: 百度 谷歌 现在想读取文件 ...

  2. java简易编辑器

    package peng_jun; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swi ...

  3. HBA简介及原理

    HBA,即主机总线适配器英文“Host Bus Adapter”缩写.是一个使计算机在服务器和存储装置间提供输入/输出(I/O)处理和物理连接的电路板和/或集成电路适配器. 简介 主机总线适配器(Ho ...

  4. 自己的第一个android应用(天气)

    主界面代码 package com.example.weather; import android.os.Bundle; import android.app.Activity; import and ...

  5. c 查找A字符串在B字符串中是否存在,计算出现的次数

    主要是应用了头文件<string.h>中的strstr函数 char * strstr(const char *s1, const char *s2); 查找是否存在: #include& ...

  6. 关于js封装框架类库之样式操作

    在js中,对样式的操作我们并不感到陌生,在很多框架中都是用极少的代码,实现更强大的功能,在这做出一些的总结.存在不足还望指出! 1.封装一个添加css的方法(这篇引用了前面的框架结构) 在 js 中 ...

  7. http 代理 测试

    Technorati 标记: http 代理验证及测试 Technorati 标记: C# 参考了网上很多资料,综合整理出来最终的代码:   using System; using System.Co ...

  8. 五子棋Web版的开发(二)--整合Spring4.3+hibernate4+Struts2.3

    拖了这么久才把ssh框架给整合完毕,期间发现自己对SSH的知识真的是知之甚少.在整合期间遇到了无数的坑,我还是先把项目地址发一下吧 首先我遇到的第一个问题是 CreateQuery is not va ...

  9. 在Mac pro上如何配置adb命令?

    在Mac pro上如何将Android SDK的adb命令添加到环境变量中,这里将进行说明! 方法/步骤 1 启动终端,可以在Spotlight中搜索“终端” 2 进入当前用户的HOME目录,命令如下 ...

  10. HDU 2841 Visible Trees(莫比乌斯反演)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=2841 题意:给n*m的矩阵(从(1,1)开始编号)格子,每个格子有一棵树,人站在(0,0)的位置,求可 ...