面試竟然掛在了sql語句的書寫順序以及執行順序上面

寫在前面: 我是「揚帆向海」,這個暱稱來源於我的名字以及女朋友的名字。我熱愛技術、熱愛開源、熱愛編程。技術是開源的、知識是共享的

這博客是對自己學習的一點點總結及記錄,如果您對 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


由於水平有限,本博客難免有不足,懇請各位大佬不吝賜教!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章