MSDN WHERE 定義
指定查詢所傳回之資料列的搜尋條件。MSDN HAVING 定義
指定群組或彙總的搜尋條件。 HAVING 只能搭配 SELECT 陳述式使用。 HAVING 通常用在 GROUP BY 子句中。當未使用 GROUP BY 時,HAVING 的行為會如同 WHERE 子句WHERE 和 HAVNG 差異
- SELECT、FROM、WHERE、GROUP BY 和 HAVING 的 T-SQL 邏輯順序來看,順序分別為
WHERE 在 GROUP BY 之前,而 HAVING 在 GROUP BY 之後- FROM
- WHERE
- GROUP BY
- HAVING
- SELECT
- WHERE 無法對彙總欄位進行篩選,但 HAVING 可以
- HAVING 通常搭配 GROUP BY 來對彙總資料進行篩選
找出金額超過 100,000 的訂單
USE AdventureWorks2012
GO
SELECT
SalesOrderID,
SUM(LineTotal) AS SubTotal
FROM Sales.SalesOrderDetail
GROUP BY SalesOrderID
HAVING SUM(LineTotal) > 100000.00
ORDER BY SalesOrderID
- 延伸閱讀
- [SQL] T-SQL 語法邏輯順序
沒有留言:
張貼留言