Softmush.com, teknoloji, yazılım ve dijital dünyaya dair derinlemesine içeriklerle bilgiye ulaşmanın güvenilir adresi. - Softmush.com
“ Söz konusu olan vatansa, gerisi teferruat. ”
Mustafa K. Atatürk
SQL Dilinde SUM Fonksiyonu: Detaylı Kullanım Kılavuzu

SQL Dilinde SUM Fonksiyonu: Detaylı Kullanım Kılavuzu

SQL (Yapısal Sorgulama Dili), veritabanlarından bilgi almayı ve manipüle etmeyi sağlayan güçlü bir dildir. Bu dilin temel bileşenlerinden biri olan SUM() fonksiyonu, sayısal bir sütundaki değerlerin toplamını hesaplamak için kullanılan bir toplama (aggregate) fonksiyonudur. Raporlama, finansal analiz veya genel veri özetleri oluştururken, belirli bir kriteri karşılayan tüm kayıtların toplam değerini bulmak hayati öneme sahiptir. Bu kılavuz, SUM() fonksiyonunun sözdiziminden başlayarak, çeşitli kullanım senaryolarını örneklerle açıklayacak ve bu güçlü fonksiyonu verimli bir şekilde kullanmanıza yardımcı olacak pratik bilgiler sunacaktır.


SQL SUM Fonksiyonunun Sözdizimi


SUM() fonksiyonunun temel sözdizimi aşağıdaki gibidir:


SELECT SUM(sutun_adi)
FROM tablo_adi
WHERE kosul;

İsteğe bağlı olarak, yalnızca benzersiz değerlerin toplamını almak için DISTINCT anahtar kelimesi kullanılabilir:


SELECT SUM(DISTINCT sutun_adi)
FROM tablo_adi
WHERE kosul;

Detaylı Açıklama


SUM() fonksiyonu, belirtilen bir sayısal ifadenin veya sütunun değerlerini toplar. Fonksiyonun bileşenleri şunlardır:


  • SUM(): Bu, toplama işlemini gerçekleştiren ana fonksiyondur.

  • sutun_adi veya expression: Toplanacak değerleri içeren sayısal bir sütun adını veya sayısal bir değer döndüren herhangi bir ifadeyi (örneğin, Miktar * BirimFiyat) temsil eder. Bu ifade, INT, DECIMAL, FLOAT gibi sayısal veri tiplerine sahip olmalıdır.

  • DISTINCT (isteğe bağlı): Eğer bu anahtar kelime kullanılırsa, SUM() fonksiyonu yalnızca belirtilen sütundaki veya ifadedeki benzersiz değerlerin toplamını hesaplar. Yinelenen değerler toplama dahil edilmez. Genellikle bu anahtar kelimeye ihtiyaç duyulmaz ve kullanımı performansı etkileyebilir.

  • FROM tablo_adi: Sorgunun hangi tablodan veri alacağını belirtir.

  • WHERE kosul (isteğe bağlı): Toplama işlemine dahil edilecek satırları filtrelemek için kullanılır. Yalnızca belirtilen koşulu sağlayan satırlar toplanır.


SUM() fonksiyonu, varsayılan olarak NULL değerleri toplama işlemine dahil etmez. Yani, bir sütunda NULL değeri varsa, bu değer göz ardı edilir ve toplam etkilenmez.


Pratik Kullanım Örnekleri


Aşağıdaki örneklerde, bir satış tablosu olan Satislar'ı kullanacağız. Bu tablo, SatisID, UrunID, Miktar, BirimFiyat, SatisTarihi ve MusteriID sütunlarını içermektedir.


Örnek 1: Tüm Satışların Toplam Miktarını Bulma


Tüm satış kayıtlarındaki ürünlerin toplam miktarını bulmak için basit bir SUM() kullanımı:


SELECT SUM(Miktar) AS ToplamMiktar
FROM Satislar;

Açıklama: Bu sorgu, Satislar tablosundaki tüm Miktar değerlerini toplar ve sonucu ToplamMiktar adıyla döndürür.


Örnek 2: Ürün Başına Toplam Satış Hacmini Hesaplama


GROUP BY ifadesiyle birlikte SUM() kullanarak her bir ürün için ayrı ayrı toplam satış miktarını hesaplayabiliriz:


SELECT UrunID, SUM(Miktar) AS UrunToplamMiktar
FROM Satislar
GROUP BY UrunID;

Açıklama: Sorgu, UrunID'ye göre gruplandırma yapar ve her bir UrunID için ilgili satış miktarlarının toplamını hesaplar.


Örnek 3: Belirli Bir Tarihten Sonraki Toplam Geliri Hesaplama


WHERE koşulu ile belirli bir tarihten sonraki satışların toplam gelirini (miktar * birim fiyat) hesaplayabiliriz:


SELECT SUM(Miktar * BirimFiyat) AS ToplamGelir
FROM Satislar
WHERE SatisTarihi > '2023-01-16';

Açıklama: Bu sorgu, 16 Ocak 2023 tarihinden sonra gerçekleşen satışların her biri için Miktar ile BirimFiyat'ı çarparak geliri bulur ve bu gelirlerin toplamını ToplamGelir olarak döndürür.


Örnek 4: Farklı Miktar Değerlerinin Toplamını Bulma


Eğer sadece benzersiz satış miktarlarının toplamını almak istiyorsanız, DISTINCT anahtar kelimesini kullanabilirsiniz:


SELECT SUM(DISTINCT Miktar) AS FarkliMiktarToplami
FROM Satislar;

Açıklama: Bu sorgu, Satislar tablosundaki Miktar sütununda tekrar eden değerleri bir kez sayarak, yalnızca farklı Miktar değerlerinin toplamını hesaplar.


Örnek 5: Toplam Geliri Hesaplama ve Filtreleme (HAVING ile)


GROUP BY ile birlikte HAVING kullanarak, belirli bir eşiğin üzerindeki toplam gelire sahip ürünleri filtreleyebiliriz:


SELECT UrunID, SUM(Miktar * BirimFiyat) AS UrunToplamGelir
FROM Satislar
GROUP BY UrunID
HAVING SUM(Miktar * BirimFiyat) > 200;

Açıklama: Bu örnek, her bir UrunID için toplam geliri hesaplar ve yalnızca toplam geliri 200'den fazla olan ürünleri listeler.


Önemli Notlar ve İpuçları


  • NULL Değerler: SUM() fonksiyonu, NULL değerleri otomatik olarak göz ardı eder. Eğer NULL değerleri sıfır olarak dahil etmek isterseniz, COALESCE() veya ISNULL() gibi fonksiyonları kullanmalısınız (örneğin, SUM(COALESCE(sutun_adi, 0))).

  • Sayısal Olmayan Veri Tipleri: SUM() yalnızca sayısal veri tipleriyle çalışır. Sayısal olmayan bir sütun üzerinde kullanılırsa hata verecektir. Gerekirse, veri tipini uygun bir sayısal türe dönüştürmek için CAST() veya CONVERT() gibi fonksiyonları kullanın.

  • GROUP BY ile Kullanım: SUM() fonksiyonunun gücü genellikle GROUP BY ifadesiyle birleştiğinde ortaya çıkar. Bu kombinasyon, verileri belirli kategorilere göre gruplandırarak her grup için ayrı ayrı toplamları hesaplamanıza olanak tanır.

  • HAVING ile Filtreleme: GROUP BY kullanıldığında, gruplar üzerinde filtreleme yapmak için WHERE yerine HAVING ifadesi kullanılır. WHERE, gruplama yapılmadan önce satırları filtrelerken, HAVING gruplama yapıldıktan ve toplama fonksiyonları uygulandıktan sonra grupları filtreler.

  • Performans: Büyük veri kümelerinde SUM() kullanımı, özellikle DISTINCT anahtar kelimesiyle veya karmaşık ifadelerle birleştiğinde performans üzerinde etki yaratabilir. İndeksleme, sorgu optimizasyonu ve uygun veri tipi seçimi gibi faktörler performansı artırabilir.

Yayınlanma Tarihi: 2025-10-17 20:01:08
JavaScript’te Hata Yönetimi: `Error` Nesnesinin Kullanımı
Önceki Haber

JavaScript’te Hata Yönetimi: `Error` Nesnesinin Kullanımı

JavaScript Makaleleri
Sonraki Haber

Orionid Meteor Yağmuru: Halley Kuyruklu Yıldızı’nın Büyüleyici Mirası ve Gözlem Rehberi

Bilim Makaleleri
Orionid Meteor Yağmuru: Halley Kuyruklu Yıldızı’nın Büyüleyici Mirası ve Gözlem Rehberi

Yorum yap

Yorum yapabilmek için  giriş  yapmalısınız.

Yorumlar

Bu yazı hakkında henüz yorum yapılmamıştır.
× SQL Dilinde Wildcards (Joker Karakterler) Kullanımı
Bu ilginizi çekebilir

SQL Dilinde Wildcards (Joker Karakterler) Kullanımı

SQL sorgularında metin tabanlı veriler üzerinde esnek desen eşleştirme yapmak, veritabanı...