免費開始練習
hce_kmu 111年 計算機概論與程式設計

第 12 題

Which one is the actual execution order of the following statements in SQL?
[1] SELECT [DISTINCT]
[2] FROM
[3] WHERE
[4] GROUP BY
[5] ORDER BY
  • A SELECT, WHERE, GROUP BY, FROM, ORDER BY
  • B FROM, WHERE, GROUP BY, SELECT, ORDER BY
  • C FROM, WHERE, ORDER BY, SELECT, GROUP BY
  • D WHERE, FROM, ORDER BY, SELECT, GROUP BY
  • E WHERE, FROM, GROUP BY, SELECT, ORDER BY

思路引導 VIP

想像你正在一間巨大的圖書館幫老師找書。如果老師要求你「從科學類書架上,找出書名包含『宇宙』的書,最後按出版年份排列」,在執行這些篩選與排序動作之前,你必須跨出的第一步是先找到「哪裡」?是先看書名,還是得先定位到那個特定的書架呢?

🤖
AI 詳解 AI 專屬家教

同學太棒了!你能精準選出 (B) 選項,代表你對 SQL 的邏輯處理順序(Logical Query Processing)有非常紮實的理解。這類題目最容易讓人混淆的地方在於,SQL 語句的「撰寫順序」與資料庫內部的「執行順序」並不相同,而你成功避開了直覺的陷阱。

SQL 邏輯執行的核心流程

在 SQL 執行時,資料庫引擎必須先確定資料的來源,因此 FROM 永遠是執行的起點。接著,系統會利用 WHERE 篩選出符合條件的原始資料,再透過 GROUP BY 進行分組與聚合運算。當資料篩選與分組完畢後,SELECT 才會被執行,用來挑選最終要呈現的欄位。最後,因為排序只需要針對已經產出的結果進行,所以 ORDER BY 會放在最後一步執行。

▼ 還有更多解析內容

🏷️ 相關主題

計算機組織結構與資料儲存原理
查看更多「計算機概論與程式設計」的主題分類考古題