select执行顺序
2017-02-15 14:39
176 查看
一、select查询的语句顺序
SELECT ... FROM tbl1, tbl2, WHERE ... GROUP BY ... HAVING ... ORDER BY(ASC | DESC)
二、执行顺序
1、FROM:对FROM子句中前两个表执行笛卡尔积生成虚拟表vt1
2、ON:对vt1表应用ON筛选器只有满足join_condition为真的行才被插入vt2
3、OUTER(JOIN):关联表,保留外部行vt3
4、WHERE:对vt3进行筛选只有满足条件的行才被插入vt4
5、GROUP BY:按GROUP BY 子句中的列,对vt4中的行分组生成vt5
6、HAVING:对vt5进行筛选,满足条件插入vt5,生成vt6
7、SELECT:处理select列表产生vt7
8、DISTINCT:将重复的行从vt7中去除产生vt8
9、ORDER BY:将vt8的行按order by 子句中的列排序生成vt9
10、LIMIT:对vt9进行分页
SELECT ... FROM tbl1, tbl2, WHERE ... GROUP BY ... HAVING ... ORDER BY(ASC | DESC)
二、执行顺序
1、FROM:对FROM子句中前两个表执行笛卡尔积生成虚拟表vt1
2、ON:对vt1表应用ON筛选器只有满足join_condition为真的行才被插入vt2
3、OUTER(JOIN):关联表,保留外部行vt3
4、WHERE:对vt3进行筛选只有满足条件的行才被插入vt4
5、GROUP BY:按GROUP BY 子句中的列,对vt4中的行分组生成vt5
6、HAVING:对vt5进行筛选,满足条件插入vt5,生成vt6
7、SELECT:处理select列表产生vt7
8、DISTINCT:将重复的行从vt7中去除产生vt8
9、ORDER BY:将vt8的行按order by 子句中的列排序生成vt9
10、LIMIT:对vt9进行分页
相关文章推荐
- Select语句执行顺序(转)
- 完整Select语句执行顺序
- SQL语句中SELECT语句的执行顺序
- SQL中SELECT语句的执行顺序
- select top x with ties和select语句执行顺序
- select语句执行顺序
- Select 语句执行顺序以及如何提高Oracle 基本查询效率
- SELECT语句逻辑执行顺序,你知道吗?
- SELECT语句逻辑执行顺序,你知道吗?
- oracle select执行顺序的详解
- 查询语句中select from where group by having order by的执行顺序
- SQL中SELECT语句的执行顺序
- sqlserver select的执行顺序
- ORACLE-Select语句执行顺序及如何提高Oracle 基本查询效率
- SQL语句中SELECT语句的执行顺序
- ORACLE-Select语句执行顺序及如何提高Oracle 基本查询效率
- SQL 中 SELECT 语句的执行顺序
- SELECT 语句的执行顺序
- MySQL SELECT执行顺序
- Sql查询原理与Select执行顺序(详细)