子查询
subselect 是全查询的组件。
子查询指定从 FROM 子句中标识的表,视图或昵称派生的结果表。 派生可以描述为一个操作序列,其中每个操作的结果都是为下一个操作输入的。 (这只是描述子查询的一种方法。 用于执行派生的方法可能与此描述大相径庭。 如果为了获取正确的结果而实际不需要执行子查询的部分,那么可能执行也可能不执行这些部分。)
"SQL 查询" 中的 "授权" 部分描述了 子查询 的授权。
按如下顺序处理子选择的子句:
- FROM 子句
- WHERE 子句
- GROUP BY 子句
- HAVING 子句
- SELECT 子句
- ORDER BY 子句
- OFFSET 子句
- FETCH 子句
不能指定包含 ORDER BY 子句, OFFSET 子句或 FETCH 子句的子查询:
- 在视图的最外层全查询中。
- 在具体化查询表的外部全查询中。
- 除非子查询括在括号内。
SELECT * FROM T1
ORDER BY C1
UNION
SELECT * FROM T2
ORDER BY C1以下示例 有效 :(SELECT * FROM T1
ORDER BY C1)
UNION
(SELECT * FROM T2
ORDER BY C1)注: 子查询中的 ORDER BY 子句不会影响查询返回的行的顺序。 仅当在最外层全查询中指定 ORDER BY 子句时,该子句才会影响返回的行的顺序。
有关子查询中的子句的详细信息,请参阅以下主题:
