Aracılığıyla paylaş


SELECT - HAVING yan tümcesi (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiAzure Synapse AnalyticsAnaliz Platformu Sistemi (PDW)Microsoft Fabric'teki SQL analiz uç noktasıMicrosoft Fabric'teki ambarMicrosoft Fabric'teki SQL veritabanı

Bir grup veya toplama için bir arama koşulu belirtir. Yalnızca deyimiyle SELECT kullanabilirsinizHAVING. Genellikle bir GROUP BY yan tümcesi ile kullanırsınızHAVING. kullanmadığınızda GROUP BY, örtük bir tek, toplu grup vardır.

Transact-SQL söz dizimi kuralları

Syntax

[ HAVING <search condition> ]

Arguments

<search_condition>

Grupların karşılaması gereken gruplar ve toplamlar için bir veya daha fazla koşul belirtir. Arama koşulları ve koşulları hakkında daha fazla bilgi için bkz . Arama koşulu.

Metin ,görüntü ve ntext veri türlerini yan HAVING tümcede kullanamazsınız.

Examples

Bu makaledeki kod örnekleri, AdventureWorks2025 giriş sayfasından indirebileceğiniz AdventureWorksDW2025 veya örnek veritabanını kullanır.

A. Her satış siparişi için toplamı alma

Aşağıdaki örnekte, tablosundan değerini aşan her birinin toplamını SalesOrderDetail almak için bir HAVING yan tümcesi $100000.00kullanılır.SalesOrderID

USE AdventureWorks2025;
GO

SELECT SalesOrderID,
       SUM(LineTotal) AS SubTotal
FROM Sales.SalesOrderDetail
GROUP BY SalesOrderID
HAVING SUM(LineTotal) > 100000.00
ORDER BY SalesOrderID;

Örnekler: Azure Synapse Analytics ve Analytics Platform Sistemi (PDW)

B. Verilen değeri aşan toplam satışları alma

Aşağıdaki örnek, tablodan her HAVING biri için aşan SalesAmount toplamı 80000 almak için bir OrderDateKey yan tümcesi FactInternetSales kullanır.

-- Uses AdventureWorks
SELECT OrderDateKey,
       SUM(SalesAmount) AS TotalSales
FROM FactInternetSales
GROUP BY OrderDateKey
HAVING SUM(SalesAmount) > 80000
ORDER BY OrderDateKey;