적용 대상:SQL 서버
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Microsoft Fabric
의 SQL 분석 엔드포인트Microsoft Fabric
의 웨어하우스Microsoft Fabric의 SQL 데이터베이스
그룹 또는 집계에 대한 검색 조건을 지정합니다. 문에 HAVING 만 사용할 SELECT 수 있습니다. 일반적으로 절과 HAVING 함께 사용합니다GROUP BY. 사용하지 GROUP BY않으면 암시적 단일 집계 그룹이 있습니다.
Syntax
[ HAVING <search condition> ]
Arguments
<search_condition>
그룹이 충족해야 하는 그룹 및 집계에 대해 하나 이상의 조건자를 지정합니다. 검색 조건 및 조건자에 대한 자세한 내용은 검색 조건을 참조하세요.
절에는 텍스트, 이미지 및 ntext 데이터 형식을 HAVING 사용할 수 없습니다.
Examples
이 글의 코드 샘플은 Azure Data SQL Samples Repository GitHub 저장소에서 다운로드할 수 있는 , , AdventureWorksDW2025또는 AdventureWorksLT2025 샘플 데이터베이스를 사용합니다AdventureWorks2025.
A. 각 판매 주문에 대한 합계 검색
다음 예제에서는 절을 HAVING 사용하여 초과하는 테이블에서 각각 SalesOrderID 에 대한 합계를 SalesOrderDetail 검색합니다 $100000.00.
USE AdventureWorks2025;
GO
SELECT SalesOrderID,
SUM(LineTotal) AS SubTotal
FROM Sales.SalesOrderDetail
GROUP BY SalesOrderID
HAVING SUM(LineTotal) > 100000.00
ORDER BY SalesOrderID;
예제: Azure Synapse Analytics
B. 지정된 값을 초과하는 총 판매액 검색
다음 예제에서는 HAVING 절을 사용하여 SalesAmount 테이블의 각 80000에 대해 OrderDateKey을 초과하는 FactInternetSales 합계를 검색합니다.
-- Uses AdventureWorks
SELECT OrderDateKey,
SUM(SalesAmount) AS TotalSales
FROM FactInternetSales
GROUP BY OrderDateKey
HAVING SUM(SalesAmount) > 80000
ORDER BY OrderDateKey;