`
shang
  • 浏览: 196619 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

相关子查询与非相关子查询

阅读更多
子查询:嵌套在其他查询中的查询称之。
子查询又称内部,而包含子查询的语句称之外部查询(又称主查询)。
所有的子查询可以分为两类,即相关子查询和非相关子查询
1>非相关子查询是独立于外部查询的子查询,子查询总共执行一次,执行完毕后将值传递给外部查询。
2>相关子查询的执行依赖于外部查询的数据,外部查询执行一行,子查询就执行一次。
故非相关子查询比相关子查询效率高

--非相关子查询
SELECT EMPNO, LASTNAME
    FROM EMPLOYEE
    WHERE WORKDEPT = 'A00'
     AND SALARY > (SELECT AVG(SALARY)
              FROM EMPLOYEE
              WHERE WORKDEPT = 'A00')

--相关子查询
SELECT E1.EMPNO, E1.LASTNAME, E1.WORKDEPT
    FROM EMPLOYEE E1
    WHERE SALARY > (SELECT AVG(SALARY)
              FROM EMPLOYEE E2
              WHERE E2.WORKDEPT = E1.WORKDEPT)
    ORDER BY E1.WORKDEPT
分享到:
评论
4 楼 kissyssong 2011-10-01  
不错,转啦
3 楼 csjingying 2011-08-30  
不错不错。。
2 楼 gongmingwind 2010-08-14  
哥们,转载了
1 楼 gongmingwind 2010-08-14  
不错不错,刚刚地

相关推荐

    MySQL数据库:相关子查询.pptx

    相关子查询的特点在于,其内部查询的执行与外部查询是紧密关联的,子查询的执行依赖于外部查询的某个属性值。这与嵌套子查询形成对比,嵌套子查询的子查询通常只执行一次,独立于外部查询。 相关子查询的执行过程...

    面向分布式数据库的相关子查询优化策略.pdf

    根据子查询是否和外部的父查询有依赖关系,可以将子查询分为相关子查询和非相关子查询。在相关子查询中,子查询的过滤条件依赖于父查询的结果,这使得相关子查询在执行时需要反复求值,多次访问磁盘,尤其是在分布式...

    mysql子查询精炼版.pdf

    3. **相关子查询**与**不相关子查询**: - **不相关子查询**:子查询的结果不依赖于外部查询的行,可以单独执行。例如,找出每个部门工资最高的员工,先执行子查询`SELECT max(sal) FROM emp`,再根据结果执行外...

    第09章_子查询.docx

    * 按内查询是否被执行多次,将子查询划分为相关(或关联)子查询和不相关(或非关联)子查询。 单行子查询: * 使用单行比较操作符,如 =、>、>=、<、、。 * 代码示例:查询工资大于 149 号员工工资的员工的信息。...

    数据库应用ACCESS-05实验五SQL参数查询、子查询与数据更[归纳].pdf

    子查询可以分为两种类型:相关子查询和非相关子查询。相关子查询是指子查询的结果与主查询的结果相关,而非相关子查询是指子查询的结果与主查询的结果无关。 实验中要求使用子查询完成以下实验: 1. 查询未归还...

    第09章_子查询3

    相关子查询则可能在外部查询的每次循环中执行,依赖于外部查询的值。 4. **单行子查询** - **单行比较操作符**:单行子查询常与单行比较操作符结合,用于比较单个值。 - **代码示例**: - 查询工资高于149号员工...

    Oracle数据库-- 高级子查询chinese

    通过本章学习,您将可以: 书写多列子查询 子查询对空值的处理 在 FROM 子句中使用子查询 在SQL中使用单列子查询 ...书写相关子查询 使用子查询更新和删除数据 使用 EXISTS 和 NOT EXISTS 操作符 使用 WITH 子句

    第09章_子查询1

    此外,子查询还可以按照是否与外部查询相关分为**相关子查询**和**不相关子查询**。不相关子查询仅执行一次,其结果被外部查询使用;而相关子查询可能在外部查询的每次迭代中执行,根据外部查询的当前行结果来动态...

    Sybase SQL Server中子查询的设计和使用.pdf

    每一类子查询按与外部查询的关系可以分为相关(重复)子查询或非相关子查询。 相关子查询由于要引用外部查询的 from 表中的列,因此不能作为独立的查询来执行,被重复执行,即对每个外部查询选定的行执行一次。 非...

    数据库的连接查询和子查询(共30张PPT)精选.pptx

    相关子查询是一种返回多个值的子查询。 ```sql SELECT * FROM table1 WHERE column_name IN (SELECT column_name FROM table2); ``` 数据库连接查询和子查询是数据库管理系统中两种重要的查询方式。连接查询允许用户...

    SQL Server 嵌套查询.pdf

    根据子查询是否依赖于外部查询,可以分为相关子查询和非相关子查询。本文主要讨论非相关子查询,这种类型的子查询可以在比较运算符后使用,不论其返回单行还是多行结果。 1. **单行子查询**: 当子查询返回单个值...

    数据库系统概论:第4章 关系数据库标准语言——SQL语言5.ppt

    相关子查询是指子查询的查询条件依赖于父查询,这类子查询称为相关子查询。例如:SELECT sname FROM student WHERE exists (SELECT 1 FROM sc WHERE sc.sno=student.sno AND cno='c2')。 此外,本章节还介绍了带有...

    多表查询-相关子查询-SCD-答案[文].pdf

    以上就是对给定数据库SCD的相关子查询操作的解析,通过这些例子,我们可以更好地理解和运用SQL中的JOIN和子查询来处理多表查询问题。对于软件开发人员来说,掌握这些查询技巧对于设计和优化数据库查询至关重要。

    《数据库原理》实验7(嵌套查询).doc

    在嵌套查询中,有两种类型的子查询:相关子查询和不相关子查询。相关子查询的查询条件依赖于外层父查询的某个属性值,而不相关子查询的查询条件不依赖于外层父查询的属性值。 知识点4:使用嵌套查询实现复杂查询 ...

    SQL Server嵌套查询.pdf

    嵌套查询,也被称作子查询或非相关子查询,是指在一个SELECT语句的条件部分内部执行另一个SELECT语句的情况。通过嵌套查询,我们可以构建出一系列简单查询的复杂查询,以增强SQL Server查询能力。 根据嵌套查询返回...

    数据库系统及原理及MYSQL应用教程多表连接和子查询实验报告

    - **不相关子查询**:子查询的结果独立于外部查询,如找出所有分数在特定范围内(如80-90)的学生。 4. **UNION运算符**:用于合并两个或更多SELECT语句的结果集,去除重复行。 5. **IN和ANY/ALL子查询**: - **...

    第三章SQL数据查询嵌套查询优秀文档.ppt

    相关子查询是指子查询的查询条件依赖于父查询,而不相关子查询是指子查询的查询条件不依赖于父查询。 例如,下面是一个相关子查询的示例: SELECT Sname FROM Student WHERE Sno IN ( SELECT Sno FROM SC ...

    MySQL数据库:嵌套子查询一.pptx

    - 子查询分为嵌套子查询和相关子查询。嵌套子查询,也称为不相关子查询,其执行不依赖于外部查询,它先运行并提供一个结果给外部查询使用。 5. **嵌套子查询的应用示例**: - 假设我们有一个Book表,要找出与...

    (源码)基于C++的CatDB数据库管理系统.zip

    它支持基本的SQL操作(如INSERT、DELETE、UPDATE、SELECT),并支持多层嵌套子查询,包括相关子查询和非相关子查询。优化器部分支持N、A、J、JA四种子查询改写,以提高子查询的效率。接口驱动使用MySQL 5.0的TEXT...

    SQL连接、嵌套与混合查询.pdf

    子查询可以分为不相关子查询和相关子查询。不相关子查询的执行独立于外部查询,它只运行一次,生成的结果用作外部查询的条件。例如,例2中查询成绩高于80分的课程的学生姓名和所在系,就是一个不相关子查询的例子。...

Global site tag (gtag.js) - Google Analytics