表 nba 记录了 nba(team VARCHAR2(10),y NUMBER(4))夺冠球队的名称及年份:

TEAM                   Y

-------------------------

活塞                   1990

公牛                   1991

公牛                   1992

公牛                   1993

火箭                   1994

火箭                   1995

公牛                   1996

公牛                   1997

公牛                   1998

马刺                   1999

湖人                   2000

湖人                   2001

湖人                   2002

马刺                   2003

活塞                   2004

马刺                   2005

热火                   2006

马刺                   2007

凯尔特人             2008

湖人                   2009

湖人                   2010

请写出一条 SQL 语句,查询出在此期间连续获得冠军的有哪些,其连续的年份的起止时间是多少,

结果如下:

TEAM                   B              E

------------------------------ ---------

公牛                   1991          1993

火箭                   1994          1995

公牛                   1996          1998

湖人                   2000          2002

湖人                   2009          2010

答案:

SELECT MAX(nn.team) team,MIN(nn.y) Beginy,MAX(nn.y)+1 Endy
FROM    (SELECT n2.team,n2.y,ROWNUM,n2.y-ROWNUM FROM (SELECT * FROM nba) n1  INNER JOIN(SELECT * FROM nba) n2ONn1.team=n2.teamWHEREn1.y=n2.y+1) nn
GROUP BY (nn.y-ROWNUM)
ORDER BY Beginy;

1.通过自身查询,查询出连续两年获奖的球队,为了方便理解,添加了两个伪列,用于表示行号和球队开始获奖的年份

SELECT n2.team,n2.y,ROWNUM,n2.y-ROWNUM
FROM (SELECT * FROM nba) n1
INNER JOIN (SELECT * FROM nba) n2
ON
n1.team=n2.team
WHERE
n1.y=n2.y+1

查询结果

2.将上面的结果作为子查询,按开始获奖年份进行排序,最后连续获奖的一年为MAX(nn.y)+1

SELECT MAX(nn.team) team,MIN(nn.y) Beginy,MAX(nn.y)+1 Endy
FROM    (SELECT n2.team,n2.y,ROWNUM,n2.y-ROWNUMFROM (SELECT * FROM nba) n1  INNER JOIN(SELECT * FROM nba) n2ONn1.team=n2.teamWHEREn1.y=n2.y+1) nn
GROUP BY (nn.y-ROWNUM)
ORDER BY Beginy;

查询结果

Oracle程序题之:夺冠球队相关推荐

  1. oracle中级题库,Oracle选择题题库

    <Oracle选择题题库>由会员分享,可在线阅读,更多相关<Oracle选择题题库(6页珍藏版)>请在装配图网上搜索. 1.Oracle 选择题题库1. 以下命令哪个是 SQL ...

  2. java语言与www技术形成性考核册_电大Java语言与WWW技术形成性考核程序题

    电大JAVA语言与WWW技术形成性考核程序题一.写出下列程序完成的功能1.PUBLICCLASSSUM{PUBLICSTATICVOIDMAINSTRINGARGS{INTSUM0FORINTI1IM ...

  3. c语言超长编程程序,全国青少年软件编程等级考试C语言经典程序题10道五

    全国青少年软件编程等级考试C语言经典程序题10道五 [程序41] 题目:学习static定义静态变量的用法 1.程序分析: 2.程序源代码: #include "stdio.h" ...

  4. oracle强大的包,ORACLE 程序包

    程序包由PL/SQL程序元素(变量,类型)和匿名PL/SQL(游标),命名PL/SQL 块(存储过程和函数)组成. 程序包可以被整体加载到内存中,这样可以大大加快程序包中任何一个组成部分的访问速度. ...

  5. c语言程序阅读题库,C语言程序设计-阅读程序题库及答案.doc-资源下载在线文库www.lddoc.cn...

    C语言程序设计-------阅读程序题库及答案.doc 阅读程序题 2 1 以下程序的输出结果是 main D float a a 1 100000000 printf g a A 0 00000e ...

  6. c++经典编程题_全国青少年软件编程等级考试C语言经典程序题10道十

    全国青少年软件编程等级考试C语言经典程序题10道十 [程序91] 题目:时间函数举例1 1.程序分析: 2.程序源代码: #include "stdio.h" #include & ...

  7. 关于python语言的编程模式、哪个说法正确_测验1: Python基本语法元素 (第1周) 单选题+程序题...

    第1章测验,共10道单选题和2道编程题,限答1次 单选题 1.Guido van Rossum正式对外发布Python版本的年份是: A.2002 B.1998 C.2008 D.1991 正确答案: ...

  8. c语言计算机编程例题详解,计算机C语言编写程序题及答案解析精选.doc

    计算机C语言编写程序题及答案解析精选 2011年计算机二级C语言编写程序题及答案解析精选 [4.1]已知银行整存整取存款不同期限的月息利率分别为:0.315% 期限一年0.330% 期限二年月息利率 ...

  9. 高中计算机会考vb教程,高中信息技术VB会考上机程序题汇总

    高中信息技术VB会考上机程序题汇总 信息技术(选修) 程序题汇总 ☆输入2个数,实现2个数的互换: ☆求S=1-2+3-4 +N a=text1.text N=text1.text b=text2.t ...

最新文章

  1. RNNTLoss使用这个可以吗
  2. 7-21 求前缀表达式的值
  3. This function or variable may be unsafe
  4. Linux退出sqlplus界面,Linux CentOS中使用SQL*Plus启动和关闭数据库
  5. linux 设置变量在脚本之外可用,linux – 在ssh上运行脚本时,环境变量不可用
  6. bootstrap禁用点击空白处关闭模态框
  7. mycat 不得不说的缘分
  8. Java高级语法笔记-枚举类型
  9. python的类中包含什么_Python中的类(中)
  10. Vue:vue项目npm安装animate.css后动画效果不起作用
  11. gitee 拥有3.7k星星的极速后台框架—FastAdmin了解一下
  12. Java中String、StringBuffer和StringBuilder的区别和堆栈内存分配
  13. Mybatis 拦截器报错
  14. IDM的Google商店插件
  15. 登陆注册页面html代码(仿知乎)
  16. Office办公软件三十而立,从一花到多花(上)
  17. 油猴插件swagger复制路由等
  18. 华为云主机添加云监控
  19. php仿糗事百科,thinkphp精仿糗事百科整站源码
  20. 微信小程序显示天气预报

热门文章

  1. Android C++的sp指针简介
  2. 工业互联网将给中国制造业怎样的未来?
  3. E440装Win7遇到蓝屏问题
  4. 基于matlab的绿色番茄识别定位方法
  5. Cocos Creator_实现策略_多点触控之触控管理器监听单例_TypeScript
  6. 用python画圆角矩形_python-3.x
  7. 我的js css武器库
  8. WPF实现地震波警示效果
  9. 小米手环深圳通服务器维护,小米手环3 NFC版上手:手机刷公交卡的日子一去不复返了...
  10. 从官方例程深度学习海思SDK及API-第2/11季视频课程-朱有鹏-专题视频课程