嵌套子查询

  集合成员资格

  集合的比较

  空关系测试

  重复元组存在性测试

  from子句的子查询

  with子句

【例子】找出在2009年秋季,和2010年春季通识开课的所有课程

select distinct course_id from section

where semester = 'Fall'and year=2009 and course_id in

                           (select course_id from section where semester = 'Spring' and year = 2010);

集合的比较

【例子】找出平均工资最高的系

select dept_name

from instructor

group by dept_name

having avg(salary) >= all(select avg(salary)

               from instructor

               group by dept_name)

空关系测试

判断一个集合是否为空集

exists

not exist

我们还可以使用not exists结构模拟集合包含(即超集)操作,可以将“关系A包含关系B“携程”not exists(B except A)“

B集差A不存在,意思是B是A的子集。

找出选修了Biology系开设的所有的课的学生

使用except结构,写该查询

select distinct S.ID, S.name

from student as S

where not exists ((select course_id from course where dept_name = 'Biology') except (select T.course_id from  takes as T where S.ID = T.ID));

重复元祖存在性测试

找出所有在2009年最少开设2次的课程(》=2)

select T.course_id from course as T

where not unique (select R.course_id = R.course_id and R.year =2009);

注:unique, not unique 在oracle 8, sql server 7中不支持。

from子句中的子查询

例子,找出平均工资超过42000美元的那些系中的教师的平均工资

select dept_name,avg_salary

from(select dept_name, avg(salary) from instructor group by dept_name) as dept_avg(dept_name, avg_salary)//橙色部分,相当于局部子视图

where avg_salary > 42000;

with子句

找出最大预算的系

with max_budget(value) as(select max(budget)from department)--定义临时关系

select budget

from department, max_budget                   ---------------------使用临时关系

where department.budget = max_budget.value;

找出工资总额大于平均值的系

with dept_total (dept_name, value) as(select dept_name, sum(salary) from instructor group by dept_name)//每个系的工资总和

dept_total_avg(value)(select avg(value) from dept_total)//所有系的平均工资

select dept_name

from dept_total A, dept_total_avg B

where A.value>=B.value;

转载于:https://www.cnblogs.com/dejunwang/p/4792310.html

【数据库(二)】嵌套子查询相关推荐

  1. MySQL数据库---子查询insert,update,delete语句中嵌套子查询

    十.子查询的使用(重点) 1.子查询:指的是查询语句,嵌套查询语句---->一般是放在where子句中,表示条件. 2.子查询的应用使用场景: 2.1查询过程中,虽然给了条件,但是条件的结果并不 ...

  2. oracle多表嵌套查询使用,oracle sql 多表 嵌套子查询 连接查询, join where exist i...

    转:http://hi.baidu.com/delphi_relive/blog/item/d7c0034a49c4932208f7ef21.html in 和 exists也是很好区别的. in 是 ...

  3. SQL语句中的嵌套子查询

    文章目录 相关子查询 自身连接 一开始在学习的SQL语句的时候,没有感受到嵌套子查询的厉害,尤其是相关子查询.现在发现它的厉害之处,写下来记录! 相关子查询 先抛出一个问题来引出这个话题.查找每个学生 ...

  4. mysql嵌套子查询索引_SQL 子查询,索引优化

    场景 索引优化 单列索引 多列索引 索引覆盖 排序 场景 我用的数据库是mysql5.6,下面简单的介绍下场景 课程表 create table Course( c_id int PRIMARY KE ...

  5. linq 查询中嵌套子查询

    开发工具与关键技术:VS NVC 作者:听民谣的老猫 撰写时间:2019/7/22 18:15 讲一个比较实用的功能____linq 查询中嵌套子查询. 通常我们遇到上面这种情况,我们肯定是想吧后面班 ...

  6. MySQL 嵌套子查询 with子句 from子查询 in子查询 join子查询

    一.适用场景和方法 (1)适用场景 考虑查询过程中是否存在以下情况: 查询某些数据时需要分组才能得到,某些数据不需要分组就能得到或者分组条件不同: 查询某些数据时需要where条件,某些列不需要whe ...

  7. SQL:多表查询语句(嵌套子查询,多表连接)操作实例

    一.SQL Server多表查询,包括连接操作和嵌套子查询 背景知识: 一.连接:分成内连接和外连接,内连接相当于取交集,外连接相当于取并集 二.嵌套子查询:连接操作浪费资源,使用嵌套子查询可以避免连 ...

  8. oracle sql 多表 嵌套子查询 连接查询, join where exist in 的区别

    sql中exits和in的区别 转:http://hi.baidu.com/delphi_relive/blog/item/d7c0034a49c4932208f7ef21.html in 和 exi ...

  9. ylb:子查询(嵌套子查询)和子查询(相关子查询)

    ylbtech-SQL Server:SQL Server-子查询(嵌套子查询)和子查询(相关子查询) SQL Server 子查询(嵌套子查询)和子查询(相关子查询). 1,ylb:1,子查询(嵌套 ...

最新文章

  1. php 经纬度 摩卡 转换,WGS84经纬度坐标与WEB摩卡托坐标转换
  2. linux配置ip 网关 和dns(转)
  3. ORB-SLAM / ORB-SLAM2原理解读+代码解析(汇总了资料,方便大家学习)
  4. 在线运行 Linux,强的离谱!
  5. Symfony2插件StofDoctrineExtensionsBundle的使用说明
  6. windowsserver服务器维护,Windows Server服务器日常管理技巧
  7. 《软件需求分析(第二版)》第 1 章——软件需求基础知识 重点部分总结
  8. 用JavaScript中的示例进行fill()函数
  9. Linux Shell脚本的10个有用的“面试问题和解答”
  10. opencv imshow plt imshow
  11. mysql 多源复制 过滤_MYSQL 多源复制,过滤复制与应用场景
  12. Putty连接TPYBorad v102 开发板教程
  13. android 导出数据库文件
  14. RxBinding系列之RxTextView(二)
  15. fseek 函数(易懂)
  16. PS套索工具抠图及快捷键
  17. Win10系统中查看是否开启虚拟化
  18. 数据库连接串的问题。(如果是集群数据库的话)
  19. python竖线_Matplotlib示例.43 横线与竖线
  20. Using的三种使用方法

热门文章

  1. 一滴汗测出你是否压力山大,得州大学联合研发高敏度贴片式皮质醇检测仪
  2. 在B站如何不动一根手指,就可以养成6级大佬?大四学生发明养号神器,看完你也会...
  3. 「表面光鲜,实则搬砖」,机器学习社区自嘲不为人知的AI工程师真相
  4. Google人体图像分割模型Bodypix再次更新,针对Coral开发板优化,720p/30fps流畅运行...
  5. 15岁成杀人犯,监狱里学编程,37岁获释后年薪70万
  6. 开源图神经网络框架DGL升级:GCMC训练时间从1天缩到1小时,RGCN实现速度提升291倍...
  7. RAdam优化器又进化:与LookAhead强强结合,性能更优速度更快
  8. Uber无人车收购MightyAI:掘金尚未暴富,卖水先获财务自由
  9. ios ble 参考
  10. css3制作一个漂亮的按钮