從數據庫中檢索行,並允許從 SQL Server 中的一個或多個表中選擇一個或多個行或列。 雖然 SELECT 語句的完整語法較復雜,但其主要子句可歸納如下:
[ WITH <common_table_expression>]
SELECT select_list [ INTO new_table ]
[ FROM table_source ] [ WHERE search_condition ]
[ GROUP BY group_by_expression]
[ HAVING search_condition]
[ ORDER BY order_expression [ ASC | DESC ] ]
可在查詢之間使用 UNION、EXCEPT 和 INTERSECT 運算符,以便將各個查詢的結果合並或比較到一個結果集中。
某些應用於 SELECT 語句的語法限制涉及到遠程表。
SELECT 語句的邏輯處理順序以下步驟顯示 SELECT 語句的邏輯處理順序(即綁定順序)。 此順序確定在一個步驟中定義的對象何時可用於後續步驟中的子句。 例如,如果查詢處理器可以綁定到(訪問)在 FROM 子句中定義的表或視圖,則這些對象及其列可用於所有後續步驟。 相反,因為 SELECT 子句處於步驟 8,所以,在該子句中定義的任何列別名或派生列都無法被之前的子句引用。 不過,它們可由 ORDER BY 子句之類的後續子句引用。 請注意,該語句的實際物理執行由查詢處理器確定,因此順序可能與此列表不同。
from
ON
JOIN
WHERE
GROUP BY
WITH CUBE 或 WITH ROLLUP
HAVING
SELECT
DISTINCT
ORDER BY
返回頁首