SELECT - HAVING (Transact-SQL)
Berlaku untuk:
SQL Server (semua versi yang didukung)
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Menentukan kondisi pencarian untuk grup atau agregat. HAVING hanya dapat digunakan dengan pernyataan SELECT. HAVING biasanya digunakan dengan klausul GROUP BY. Ketika GROUP BY tidak digunakan, ada grup agregat tunggal implisit.
Sintaks
[ HAVING <search condition> ]
Catatan
Untuk melihat sintaks transact-SQL untuk SQL Server 2014 dan yang lebih lama, lihat Dokumentasi versi sebelumnya.
Argumen
<> search_condition Menentukan satu atau beberapa predikat untuk grup dan/atau agregat yang akan dipenuhi. Untuk informasi selengkapnya tentang kondisi dan predikat pencarian, lihat Kondisi Pencarian (SQL Transact).
Tipe data teks, gambar, dan ntext tidak dapat digunakan dalam klausa HAVING.
Contoh
Contoh berikut yang menggunakan klausul sederhana HAVING mengambil total untuk masing-masing SalesOrderID dari SalesOrderDetail tabel yang melebihi $100000.00.
USE AdventureWorks2012 ;
GO
SELECT SalesOrderID, SUM(LineTotal) AS SubTotal
FROM Sales.SalesOrderDetail
GROUP BY SalesOrderID
HAVING SUM(LineTotal) > 100000.00
ORDER BY SalesOrderID ;
Contoh: Azure Synapse Analytics and Analytics Platform System (PDW)
Contoh berikut menggunakan klausul HAVING untuk mengambil total SalesAmount yang melebihi 80000 masing-masing OrderDateKey dari FactInternetSales tabel.
-- Uses AdventureWorks
SELECT OrderDateKey, SUM(SalesAmount) AS TotalSales
FROM FactInternetSales
GROUP BY OrderDateKey
HAVING SUM(SalesAmount) > 80000
ORDER BY OrderDateKey;
