数据库部分知识点

来源:互联网 发布:java内存溢出原因 编辑:程序博客网 时间:2024/05/21 09:16

嵌套查询

一个SELECT-FROM-WHERE语句称为一个查询块
将一个查询块嵌套在另一个查询块的WHERE子句或HAVING短语的条件中的查询称为嵌套查询(Nested Query)

SELECT Sname /*外层查询或父查询*/

FROM Student

WHERE Sno IN

(SELECTSno /*内层查询或子查询*/

FROMSC

WHERECno= '2’ )

•子查询的限制
不能使用ORDERBY子句
ORDERBY子句只对最终查询结果排序
•层层嵌套方式反映了SQL语言的结构化
不相关子查询:子查询的查询条件不依赖于父查询。由里向外逐层处理。即每个子查询在上一级查询处理之前求解,子查询的结果用于建立其父查询的查找条件。

相关子查询:子查询的查询条件依赖于父查询

①首先取外层查询表第一个元组,根据它与内层查询相关的属性值处理内层查询,若WHERE子句返回值为真,则取此元组放入结果表
②然后再取外层表的下一个元组
③重复这一过程,直至外层表全部检查完为止


0 0
原创粉丝点击