已知关系模式:
        S (SNO,SNAME) 学生关系。SNO 为学号,SNAME 为姓名
        C (CNO,CNAME,CTEACHER) 课程关系。CNO 为课程号,CNAME 为课程名,CTEACHER 为任课教师
        SC (SNO,CNO,SCGRADE) 选课关系。SCGRADE 为成绩

1.找出没有选修过“李明”老师讲授课程的所有学生姓名。

        SELECT SNAME FROM S WHERE NOT EXISTS( SELECT * FROM SC, C WHERE SC.CNO=C.CNO AND CTEACHER='李明' AND SC.SNO=S.SNO)

2.列出有二门以上(含两门)不及格课程的学生姓名及其平均成绩。

        SELECT S.SNO, S.SNAME, AVG_SCGRADE=AVG(SC.SCGRADE) FROM S, SC, ( SELECT SNO FROM SC WHERE SCGRADE<60 GROUP BY SNO HAVING COUNT(DISTINCT CNO)>=2 )T WHERE S.SNO=T.SNO AND SC.SNO=T.SNO GROUP BY S.SNO, S.SNAME

3.列出既学过“1”号课程,又学过“2”号课程的所有学生姓名。

        SELECT S.SNO, S.SNAME FROM S, (SELECT SC.SNO FROM SC, C WHERE SC.CNO=C.CNO AND C.CNAME IN('1', '2') GROUP BY SNO HAVING COUNT(DISTINCT CNO)=2 )T WHERE S.SNO=T.SNO

4.列出“1”号课成绩比“2”号同学该门课成绩高的所有学生的学号。

        SELECT S.SNO, S.SNAME FROM S, ( SELECT SC1.SNO FROM SC SC1, C C1, SC SC2, C C2 WHERE SC1.CNO=C1.CNO AND C1.NAME='1' AND SC2.CNO=C2.CNO AND C2.NAME='2' AND SC1.SCGRADE>SC2.SCGRADE )T WHERE S.SNO=T.SNO

5.列出“1”号课成绩比“2”号课成绩高的所有学生的学号及其“1”号课和“2”号课的成绩。

        SELECT S.SNO, S.SNAME, SC.[1号课成绩], SC.[2号课成绩] FROM S, ( SELECT SC1.SNO, [1号课成绩]=SC1.SCGRADE, [2号课成绩]=SC2.SCGRADE FROM SC SC1, C C1, SC SC2, C C2 WHERE SC1.CNO=C1.CNO AND C1.NAME=‘1’ AND SC2.CNO=C2.CNO AND C2.NAME=‘2’ AND SC1.SCGRADE>SC2.SCGRADE )T WHERE S.SNO=T.SNO

转载于:https://www.cnblogs.com/innosight/archive/2013/05/27/3271259.html

史上最经典的数据库面试题之二相关推荐

  1. 史上最全的数据库面试题,不看后悔篇!

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者:追寻自我 cnblogs.com/wenxiaofei/p/ ...

  2. 史上最全的数据库面试题,不看绝对后悔

    点击上方 "程序员小乐"关注, 星标或置顶一起成长 后台回复"大礼包"有惊喜礼包! 关注订阅号「程序员小乐」,收看更多精彩内容 每日英文 Everyone ha ...

  3. 【103期】史上最全的数据库面试题,面试前刷一刷!

    程序员的成长之路 互联网/程序员/技术/资料共享 关注 阅读本文大概需要 40 分钟. 来自:cnblogs.com/wenxiaofei/p/9853682.html 一.基本概念 1.主键.外键. ...

  4. 经典SQL数据库面试题以及答案—Oracle版本-SQL全部在plsql开发编写-欢迎提问

    Student(Sno,Sname,Sage,Ssex) 学生表 S1:学号:Sname:学生姓名:Sage:学生年龄:Ssex:学生性别 Course(Cno,Cname,T1) 课程表 C1,课程 ...

  5. 经典mysql数据库面试题_【数据库】MySQL经典面试题(练习)

    id number(32) NOT NULL, name varchar(10) DEFAULT NULL, sax varchar(10) DEFAULT NULL, age number(6) D ...

  6. 数据库面试题【二、MYSQL的两种存储引擎区别(事务、锁级别等等)】

    引擎 特性 MYISAM 不支持外键,表锁,插入数据时,锁定整个表,查表总行数时,不需要全表扫描 INNODB 支持外键,行锁,查表总行数时,全表扫描

  7. 计网/数据库面试题(更新中ing~~)

    计网/数据库面试题(更新中ing~~) <计算机网络> 1. OSI七层模型.设备 (传输层)协议的多路分用和复用 2. TCP/IP四层模型==五层模型 (传输层)TCP和UDP协议对比 ...

  8. MySQL数据库面试题(2021最新版)

    文章目录:http://github.crmeb.net/u/defu 数据库基础知识 为什么要使用数据库 什么是SQL? 什么是MySQL? 数据库三大范式是什么 mysql有关权限的表都有哪几个 ...

  9. 经典大数据面试题及解析

    经典大数据面试题及解析 1.下列哪个属性是hdfs-site.xml中的配置? A.dfs.replication B.fs.defaultFS C.mapreduce.framework.name ...

最新文章

  1. 占用栅格地图算法的理解
  2. python英语单词大全-使用Python进行英文单词分割
  3. Linux 上的最佳 C/C++ IDE
  4. 探索javascript----获得节点计算后样式
  5. 制作wordpress页面的学习记录
  6. YII2 随笔 视图最佳实践
  7. 安装mysql-connector-python-8.0.11-py3.6遇到问题
  8. PP视频怎么关闭PP视频虚拟键盘显示
  9. Magento教程 21:新增客户评价的满意度项目! (Add rating)
  10. c# getresponsestream返回byte[]_C#通过SharpZipLib库创建压缩文件
  11. 单手撸了个springboot+mybatis+druid 1
  12. Angr安装与使用之使用篇(二)
  13. Android字体设置,Roboto字体使用
  14. foxmail邮件备份到服务器上,foxmail发送邮件自动保存到邮件服务器的方法
  15. Datawhale组队学习周报(第031周)
  16. 北京建筑大学计算机学院岑孝鹏,北京建筑大学
  17. C++写入并追加内容到txt中
  18. C#:控制台数绵羊小程序
  19. LT7911D功能概述 LT7911D是Type-C/DP1.2转双路MIPI/Lvds的一款芯片
  20. 视频教程-玩转2018微信小程序-微信开发

热门文章

  1. 深入浅出Node.js(八):Connect模块解析(之二)静态文件中间件
  2. Windows下完成端口移植Linux下的epoll
  3. VS2005使用點滴積累
  4. How to apply for the PG studies as a UG
  5. Communication boosts value
  6. 在做研究的时候很重要的事情
  7. 什么是最重要的事情?来自长辈的教诲
  8. 出国留学想申请国家留学基金委的奖学金?传说中的csc! 从这里入手就对了!
  9. 关于出去还是不出去的选择
  10. sed 和 awk 的一些用法