適用対象:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Microsoft Fabric の SQL 分析エンドポイント
Microsoft Fabric のウェアハウス
Microsoft Fabric の SQL データベース
グループまたは集計の検索条件を指定します。
HAVINGは、SELECT ステートメントでのみ使用できます。 通常は、GROUP BY句でHAVINGを使用します。
GROUP BYを使用しない場合、暗黙的な単一の集計グループがあります。
Syntax
[ HAVING <search condition> ]
Arguments
<search_condition>
グループに対して 1 つ以上の述語を指定し、グループが満たす必要がある集計を指定します。 検索条件と述語の詳細については、「 検索条件」を参照してください。
HAVING句では、テキスト、画像、および n テキストのデータ型を使用できません。
Examples
この記事のコード サンプルでは、AdventureWorks2025 または AdventureWorksDW2025 サンプル データベースを使用します。このサンプル データベースは、Microsoft SQL Server サンプルとコミュニティ プロジェクト ホーム ページからダウンロードできます。
A。 各販売注文の合計を取得する
次の例では、HAVING句を使用して、$100000.00を超えるSalesOrderDetail テーブルから各SalesOrderIDの合計を取得します。
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、Analytics Platform System (PDW)
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;