適用対象:SQL Server
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>
グループに対して 1 つ以上の述語を指定し、グループが満たす必要がある集計を指定します。 検索条件と述語の詳細については、「 検索条件」を参照してください。
句では、テキスト、画像、HAVINGのデータ型を使用できません。
Examples
この記事のコードサンプルは、Azure Data SQL Samples Repository GitHub repositoryからダウンロードできるAdventureWorks2025またはAdventureWorksDW2025サンプルデータベースを使用しています。
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;