oralce之复杂查询举例
2024-08-30 20:01:44
表结构:
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
最新文章
- 备忘录模式(Memento Pattern)
- HDU 4864 Task (贪心+STL多集(二分)+邻接表存储)(杭电多校训练赛第一场1004)
- ubuntu 下root用户无法访问声音设备的解决方案
- UVa 10048 (Floyd变形) Audiophobia
- 【HDOJ】1072 Nightmare
- jquery简单的拖动效果
- java.sql.SQLException: Value &#39;0000-00-00 00:00:00&#39; can not be represented as java.sql.Timestamp
- opencv 小程序170323
- C语言 第三章 关系、逻辑运算与分支流程控制
- 多米诺骨牌放置问题(状压DP)
- 多线程校验url的种种。。。
- Key Lookup开销过大导致聚集索引扫描
- SVG路径PATH
- ionic 搜索双向数据绑定失效
- Django服务端读取excel文件并且传输到接口
- 011 - JDK自带的性能监控工具
- Entity Framework的几种初始化器
- VS2017 加载项目 :未找到框架“.NETFramework,Version=v4.7”的引用程序集(出坑指南)
- 2017-2018-1 20155234 实验三 实时系统及mypwd实现
- JavaScript中有对字符串编码的三个函数:escape,encodeURI,encodeURIComponent