.
SQL Server’da veri analizleri yaparken verileri özetlemek ve anlamlı sonuçlar elde etmek için toplama fonksiyonları sıklıkla kullanılır. Bu fonksiyonlar, büyük veri kümelerindeki değerleri tek bir değer halinde birleştirerek genel bir bakış sunar. Örneğin, bir tabloda yer alan tüm sayısal değerlerin toplamını, ortalamasını veya en büyük değerini hesaplamak için bu fonksiyonlara başvururuz.
Sık Kullanılan Toplama Fonksiyonları
SUM () Fonksiyonu: Bir sütündaki tüm sayısal değerlerin toplamını hesaplar.
USE AdventureWorks2019
GO
SELECT
SUM(LineTotal) AS NetSatışTutarı,
SUM(UnitPrice * OrderQty) AS BrütSatışTutarı
FROM Sales.SalesOrderDetail
AVG () Fonksiyonu: Bir sütündaki tüm sayısal değerlerin ortalamasını hesaplar.
SELECT
AVG(LineTotal) AS OrtalamaSatırTutarı,
AVG(UnitPrice) AS OrtalamaBirimFiyat,
AVG(OrderQty) AS OrtalamaSiparisAdedi
FROM Sales.SalesOrderDetail
COUNT () Fonksiyonu: Bir sütundaki değerlerin veya tüm satırların sayısını hesaplar.
SELECT
COUNT(*) AS TablodakiToplamKayıtSayısı,
COUNT(ProductID) AS ÜrünSayısı,
COUNT(DISTINCT ProductID) AS BenzersizÜrünSayısı
FROM Sales.SalesOrderDetail
MIN () Fonksiyonu: Bir sütundaki en küçük değeri bulur.
SELECT
MIN(LineTotal) AS MinimumSatırTutarı,
MIN(UnitPrice) AS MinimumBirimFiyat,
MIN(ModifiedDate) AS EnEskiTarih,
MIN(OrderQty) AS MinimumSiparisAdedi,
MIN(YEAR(ModifiedDate)) AS İlkYıl,
MIN(CarrierTrackingNumber) AS AlfabetikMin,
MIN(LEN(CarrierTrackingNumber)) AS MinMetinUzunluğu
FROM Sales.SalesOrderDetail
MAX () Fonksiyonu: Bir sütundaki en büyük değeri bulur.
SELECT
MAX(LineTotal) AS MaximumSatırTutarı,
MAX(UnitPrice) AS MaximumBirimFiyat,
MAX(ModifiedDate) AS EnSonTarih,
MAX(OrderQty) AS MaximumSiparisAdedi,
MAX(YEAR(ModifiedDate)) AS SonYıl,
MAX(CarrierTrackingNumber) AS AlfabetikMax,
MAX(LEN(CarrierTrackingNumber)) AS MaxMetinUzunluğu
FROM Sales.SalesOrderDetail
Toplama Fonksiyonlarına İlişkin Notlar
MAX() ve MIN() Fonksiyonları ilk ve son sıradaki metin değerlerini getirmek için de kullanılabilir.
COUNT() dışındaki diğer toplama fonksiyonları NULL değerleri değerlendirmeye almaz..
WHERE yan cümlesi içerisinde toplama fonksiyonu kullanılarak filtreleme yapılamadığından, istenen sonuca ulaşmak için HAVING yan cümlesi kullanılabilir Örneğin 3 Milyondan büyük satış tutarı olan ürünlerin listesini almak istediğimizi düşünelim:
SELECT
ProductID,
SUM(LineTotal) AS ÜrünSatışTutarı
FROM Sales.SalesOrderDetail
GROUP BY ProductID
HAVING SUM(LineTotal) > 3 * POWER(10,6)
Bugün SUM, AVG, COUNT, MIN ve MAX gibi temel toplama fonksiyonlarına değindik. SQL Server’daki toplama fonksiyonları, veritabanı sorgulamalarında sıklıkla kullanılan ve verileri özetlemek için vazgeçilmez araçlardır. Bu fonksiyonlar sayesinde, büyük veri kümelerindeki verileri hızlı ve etkili bir şekilde analiz edebilir ve özetleyebilirsiniz. Bir sonraki yazıda görüşmek üzere..