飞道的博客

【面试】竟然挂在了sql语句的书写顺序以及执行顺序上面

403人阅读  评论(0)

写在前面: 我是「扬帆向海」,这个昵称来源于我的名字以及女朋友的名字。我热爱技术、热爱开源、热爱编程。技术是开源的、知识是共享的

这博客是对自己学习的一点点总结及记录,如果您对 Java算法 感兴趣,可以关注我的动态,我们一起学习。

用知识改变命运,让我们的家人过上更好的生活

昨天一个同学去面试某公司,面试官让他说一下sql的执行顺序,他尽然答错了,面试也就到此结束了!实属不应该。。。

借这个机会,在这里做一下简单的总结!


1. 书写顺序

按以下的顺序书写sql语句

SELECT 查询列表.
FROM1                                      
【连接类型】 JOIN2						   
ON 连接条件
WHERE 筛选条件
GROUP BY 分组列表
HAVING 分组后的筛选条件
ORDER BY 排序的字段
LIMIT 起始的条目索引,条目数;

即:

SELECTFROMJOINONWHEREGROUP BYHAVINGORDER BYLIMIT

注意

① 连接类型有:innerleft outerright outercross

② 起始条目索引默认从0开始;

③ 若 每页显示条目数:pageSize,要显示的页数:page
则有:

SELECT * FROMLIMIT (page-1* pageSize,pageSize

2. 执行顺序

按右边标出的 ①-⑨ 的顺序执行

SELECT 查询列表				⑦					
FROM1					①                                      
【连接类型】 JOIN2ON 连接条件					③
WHERE 筛选条件				④
GROUP BY 分组列表			⑤
HAVING 分组后的筛选条件		⑥
ORDER BY 排序的字段			⑧
LIMIT 起始的条目索引,条目数;

即:

FROMJOINONWHEREGROUP BYHAVINGSELECTORDER BYLIMIT


由于水平有限,本博客难免有不足,恳请各位大佬不吝赐教!


转载:https://blog.csdn.net/weixin_43570367/article/details/104857397
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场