表结构:

S(SNO,SNAME) 代表 学号。学生姓名;

C(CNO,CNAME,CTEACHER) 代表 课号,课程名称。授课老师

SC(SNO,CNO,SCGRADE) 代表 学号。课号。课程成绩

1 查询没选过“黎明”老师的全部学生姓名。

select s.sname
from s
join sc
on sc.sno=s.sno
join c
on c.cno=s.cno
where c.cteacher<>'黎明'

2 查询出2门以上(包括2门)不及格学生的姓名及平均成绩。

select s.sname,c.a_grade
from
(select a.sno,count(cno)
from
(select sno,cno
from sc
where sc.scgrade<60)
group by a.sno
having count(cno)>1)b
join s
on b.sno=s.sno
join
(select avg(scgrade) a_grade,sno
from sc
group by sno)c
on c.sno=s.sno

3 既学过1号课程又学过2号课程的学生姓名;

select s.sname
from s
join
(select count(*),sno
from
(select * from
sc
where sc.cno in(1,2))
grout by sno
having cout(*)>1)a
on a.sno=s.sno

oralce之复杂查询举例的更多相关文章

  1. Oralce 如何将查询结果中的0转成空的

    我们遇到过大多的情况的需求是查询结果中空转为0,这个可以通过oracle的NVL()函数就可以搞定. 之前做报表客户有个需求,查询出结果为0 要转成空的,不显示0 那么在oracle有没有现成函数能搞 ...

  2. mongoDB查询及游标

    find文档 1.find简介 使用find查询集合中符合条件的子集合 db.test.blog.find(); 类似于sql查询 select * from test.blog 上面的查询是返回多有 ...

  3. python 全栈开发,Day74(基于双下划线的跨表查询,聚合查询,分组查询,F查询,Q查询)

    昨日内容回顾 # 一对多的添加方式1(推荐) # book=Book.objects.create(title="水浒传",price=100,pub_date="164 ...

  4. python 全栈开发,Day73(django多表添加,基于对象的跨表查询)

    昨日内容回顾 多表方案: 如何确定表关系呢? 表关系是在2张表之间建立的,没有超过2个表的情况. 那么相互之间有2条关系线,先来判断一对多的关系. 如果其中一张表的记录能够对应另外一张表的多条记录,那 ...

  5. python 全栈开发,Day62(外键的变种(三种关系),数据的增删改,单表查询,多表查询)

    一.外键的变种(三种关系) 本节重点: 如何找出两张表之间的关系 表的三种关系 一.介绍 因为有foreign key的约束,使得两张表形成了三种了关系: 多对一 多对多 一对一 二.重点理解如果找出 ...

  6. 08: MySQL慢查询

    1.1 寻找慢查询   定义:我们将超过指定时间的SQL语句查询称为“慢查询”. 1.在mysql日志中开启慢查询日志 1. 修改配置文件  在 my.ini 增加几行:  主要是慢查询的定义时间(超 ...

  7. (转)python 全栈开发,Day74(基于双下划线的跨表查询,聚合查询,分组查询,F查询,Q查询)

    昨日内容回顾 # 一对多的添加方式1(推荐) # book=Book.objects.create(title="水浒传",price=100,pub_date="164 ...

  8. HQL和SQL查询

     转自http://blog.csdn.net/aaa1117a8w5s6d/article/details/7757097 HQL和SQL的区别 标签: sqlhibernatejavasessio ...

  9. Solr --- Group查询与Facet区别

    简介 facet的查询结果主要是分组信息:有什么分组,每个分组包括多少记录:但是分组中有哪些数据是不可知道的,只有进一步搜索. group则类似于关系数据库的group by,可以用于一个或者几个字段 ...

随机推荐

  1. 使用 reduce 实现数组 map 方法

    //使用 reduce 实现数组 map 方法 const selfMap2 = function (fn, context){ let arr = Array.prototype.slice.cal ...

  2. dedecms部分文章出现读取附加信息出错的解决办法

    问题: 估计是新版本开发的时候,没有考虑旧版,文章内容为空的新闻,新版不在允许文章内容为空的新闻,这样旧版的内容为空的新闻升级后将无法再编辑. 解决:你可以对如下文件进行如下修改:article_ed ...

  3. 一、认识spring框架

    对于spring框架,作为Java开发人员肯定不陌生,大名鼎鼎,名声在外,但是对于spring框架没有进行过系统的学习,从今天开始学习并且记录一下spring框架的比较牛逼的特性. 一.spring简 ...

  4. NOIp模拟赛 西行妖下

    题目描述: 给出一棵n个节点的树,每个点初始m值为1. 你有三种操作: 1.Add l r k ,将l到r路径上所有点m值加k. 2.Multi l r k ,将l到r路径上所有点m值乘k. 3.Qu ...

  5. linux连接xshell

    1. 前言 在前面的文章https://www.cnblogs.com/ajunyu/p/10872595.html提到新建了虚拟机可以通过连接xshell来远程操作,这篇文章我们来简单讲解一下虚拟机 ...

  6. Go:二分查找

    package main import "fmt" func BinarySearch(arr *[5]int, leftIndex int, rightIndex int, fi ...

  7. js 技巧 (十)广告JS代码效果大全 【3】

    3.[允许关闭]     与前面两个代码不同的是,广告图下方增加了一个图片按纽,允许访客点击关闭广告图片,下面文本框中就是实现效果所需代码: var delta=0.015;     var coll ...

  8. buf.toString()

    buf.toString([encoding[, start[, end]]]) encoding {String} 默认:'utf8' start {Number} 默认:0 end {Number ...

  9. cgi fastcgi php-cgi php-fpm

      参考: 摘至:http://www.cnblogs.com/thinksasa/p/4497567.html 详说fastcgi,php-fpm的区别:http://segmentfault.co ...

  10. MySQL-----多对多

    多对多: 示例1: 用户表和相亲记录表 用户表 用户id 用户名                  性别 1 George  男 2 Elizabeth 女 3 Bruce 男 4 Catherine ...