一文让你彻底理解SELECT语句的执行逻辑

Posted uni-hoang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一文让你彻底理解SELECT语句的执行逻辑相关的知识,希望对你有一定的参考价值。

正常情况下SELECT的书写顺序和执行顺序:

书写顺序:

SELECT》FROM 》WHERE》GROUP BY》HAVE》ORDER BY

执行顺序:

FROM 》WHERE》GROUP BY》HAVE》SELECT》ORDER BY

以下以Product表为例:
技术图片

执行以下代码说明执行过程:

SELECT product_type,count(*)

FROM Product

WHERE sale_price > 100

GROUP BY product_type

HAVING count(*) > 1

ORDER BY product_type

执行过程如下:

1、FROM product

指定从Product表获取数据。

2、WHERE sale_price > 100

筛选销售价大于100的:
技术图片

3、GROUP BY product_type

以product_type列分组:
技术图片

4、HAVING count(*) > 1

筛选出组内数据行大于1的
技术图片

5、SELECT product_type,count(*)

筛选出product_type,count(*)列
技术图片

6、ORDER BY product_type

以 product_type列排序

技术图片

来源于:https://zhuanlan.zhihu.com/p/41844742






以上是关于一文让你彻底理解SELECT语句的执行逻辑的主要内容,如果未能解决你的问题,请参考以下文章

一文让你彻底理解SQL连接查询

一文让你彻底理解SQL关联子查询

一文让你彻底理解准确率,精准率,召回率,真正率,假正率,ROC/AUC

一文让你彻底明白Linux中的umask

一文让你彻底弄懂MySQL自增列

python入门到精通一文让你彻底搞懂python的函数