子查询与内嵌视图
子查询是完整的查询语句。子查询首先生成结果集,并将结果集应用于条件语句。子查询与内嵌视图不同。内嵌视图也可以看作临时查询结果,但是内嵌视图出现在from子句中,并与其他数据源(数据表、视图等)形成笛卡尔积运算。而子查询单独运算,不会与其他数据源进行笛卡尔积运算。
子查询可以出现在插入、查询、更新和删除语句中。建立子查询的目的在于更加有效的限制where子句中的条件,并可以将复杂的查询逻辑梳理的更加清晰。
查询可以访问父查询中的数据源(数据表、视图等),但是父查询不能够访问子查询from子句所定义的数据源。当子查询访问父查询中的数据源时,子查询的查询结果集合可能随着记录的推移而发生变化,因为此时的子查询是针对父查询中的每条记录执行。