Jquery中文网 www.jquerycn.cn
Jquery中文网 >  数据库  >  mysql  >  正文 mysql中SELECT语句的执行顺序

mysql中SELECT语句的执行顺序

发布时间:2016-03-13   编辑:www.jquerycn.cn
本文介绍下,mysql数据库中select语句的执行顺序,有需要的朋友参考下。

与大家分享mysql数据库中,SELECT语句的定义,以及select语句的执行顺序。

1,select语句的定义

一个完成的SELECT语句包含可选的几个子句。
SELECT语句的定义如下:
 

<SELECT clause> [<FROM clause>] [<WHERE clause>] [<GROUP BY clause>] [<HAVING clause>] [<ORDER BY clause>] [<LIMIT clause>]
 

SELECT子句是必选的,其它子句如WHERE子句、GROUP BY子句等是可选的。
一个SELECT语句中,子句的顺序是固定的。例如GROUP BY子句不会位于WHERE子句的前面。
 
2,SELECT语句的执行顺序
SELECT语句中子句的执行顺序与SELECT语句中子句的输入顺序是不一样的,所以并不是从SELECT子句开始执行的,而是按照下面的顺序执行:
开始->FROM子句->WHERE子句->GROUP BY子句->HAVING子句->ORDER BY子句->SELECT子句->LIMIT子句->最终结果
 
每个子句执行后都会产生一个中间结果,供接下来的子句使用,如果不存在某个子句,就跳过。

以前还真没有注意,今天算是理解了mysql select语句的执行顺序。

您可能感兴趣的文章:
mysql中SELECT语句的执行顺序
mysql中force Index等一些不是很常用的sql优化介绍
MySQL update 语句的正确用法(多表update、单表update)
mysql中的in排序 mysql按in中顺序来排序
mysql update语句的用法详解
mysql group by和having实例详解
mysql数据库UPDATE语句一个bug分析
MySQL常用HINT分享
分组查询GROUP BY用法例子详解
设计高效合理的MySQL查询语句的建议

[关闭]