查询执行顺序:
from -> on -> join -> where -> group by -> having -> count(聚合函数) -> select -> distinct -> order by -> limit 
可以基于 GROUP BY 里的东西进行 ORDER BY 吗?(可以,ORDER BY 基本上是在最后执行的,所以可以基于任何东西进行 ORDER BY)
 
聚集索引:
正文内容按照一定规则排列  类比字典的拼音查找汉字。对于查的频繁操作 相当于用拼音查字典
非聚集索引:
正文纯粹的排列方式  类比字典的偏旁部首查找汉字。对于数据库的操作(删 改)的操作 相当于偏旁部首查字典
sql执行顺序

SQL语句的解析过程 - 独上高楼 - 博客园 (cnblogs.com)

你还可以再诡异点吗——SQL日志文件不断增长 - i6first - 博客园 (cnblogs.com)

SQL Server数据库损坏、检测以及简单的修复办法 - CareySon - 博客园 (cnblogs.com)

SQL Server内存遭遇操作系统进程压榨案例 - czperfectaction - 博客园 (cnblogs.com)

SQL Server 容易忽略的错误 - pursuer.chen - 博客园 (cnblogs.com)

我是如何在SQLServer中处理每天四亿三千万记录的 - 马非码 - 博客园 (cnblogs.com)

不懂数据库索引的底层原理?那是因为你心里没点b树 - 苏苏喂苏苏+ - 博客园 (cnblogs.com)

聊一聊数据库中的锁 - 码农阿宇 - 博客园 (cnblogs.com)

https://blog.csdn.net/shaiguchun9503/article/details/82349050  (ROW_NUMBER、RANK、DENSE_RANK、NTILE)简介

https://www.cnblogs.com/godbell/p/9332885.html       SQL ROUND函数

https://www.cnblogs.com/wangjiming/p/10098061.html  SQL基础

https://www.cnblogs.com/smallzhen/p/14534756.html  https://www.cnblogs.com/zjfjava/p/12257772.html  https://juejin.cn/post/7048974570228809741    

 
解析器
DML(Update、Insert、Delete)
DDL(表结构修改)
DCL(权限操作)
DQL(Select)操作
这里我只是一条查询SQL,也就是一句DQL。客户端按照Mysql通信协议,把我发送到服务端。当我到达服务端后,我会在一个单独的线程里进行执行。到达服务端后,Mysql要判断我的前6个字符是否为select。并且,语句中不带有SQL_NO_CACHE关键字,如果符合条件,就进入查询缓存。查询缓存,它其实是一个哈希表。【Mysql8.0已经没有缓存概念。1、只要有对一个表的更新,这个表上所有的查询缓存都会被清空2、SQL任何字符上的不同,如空格,注释,都会导致缓存不命中】