數據庫語句的執行順序


2.1、數據庫語句的執行順序 

(一): 執行順序  from -> on -> join -> where -> group by -> having -> count(聚合函數) -> select -> distinct -> order by -> limit 

(二): 執行步驟解釋: 

(1)、from: 表示數據的來源 

(2)、on: 表示數據的關聯表,執行完后生成一個臨時表t1,提供給下一步的操作使用 

(3)、join: 將join表的數據補充到on執行完成的臨時表t1中,如: left join則將坐標剩余的數據添加到臨時表t1中,如果join超過3個,則重復on...join之間的步驟。 

(4)、where: 根據攜帶的條件,從臨時表中篩選出符合條件的數據,並生成臨時表t2。

(5)、groub by: 根據攜帶的條件,將臨時表t2進行相應的數據分組,並形成臨時表t3,如果語句包含了group by則它后面的字段必須出現在select中或者出現在聚合函數中,否則會報SQL語法錯誤。 

(6)、having: 篩選分組后臨時表t3的數據,得到臨時表t4。 

(7)、count等聚合函數: 對臨時表進行指定字段的聚合函數操作,形成臨時表t5。 

(8)、select: 從臨時表篩選出需要返回的數據,形成臨時表t6。 

(9)、distinct: 對臨時表t6進行指定的去重篩選,形成臨時表t7。

(10)、order by: 對臨時表t7排序,形成臨時表t8。 

(11)、limit: 篩選返回的數據條數  想要了解更多的執行過程的問題,可以點擊這里領取之前整理的一些面試題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM