SQL Aggregate Fonksiyonları Kullanımı ( SUM, COUNT, ISNULL, MAX, MIN, AVG )

Mart 03, 2017 Mustafa BÜKÜLMEZ 0 Yorum



Selamlar arkadaşlar,
Bu dersimizde sql SUM(), COUNT(), ISNULL(), MAX(), MIN() ve AVG() gibi aggregate fonksiyonların anlatımını yapacağım.

Aggregate'nin Türkçe karşılığı toplamak, birleştirmek, gruplamak anlamlarına gelmektedir.

Hemen başlayalım.

1 - SUM() sql de toplama anlamına gelir. İçerisine yazılan kolondaki tüm verilerin (sayısal) toplamını verir. Verileri listeleme için yazılan select sorgularında kullanılamaz. Ancak iç içe select  kullanarak başka bir tablodaki veriler üzerinde toplama yaparak kullanabiliriz.

örnek verecek olursak.

select 
 sip_RECno as KayıtNo
,FirmaAdi as Firma
,sip_Tarihi as Tarih

,(select SUM(dty_TFiyat) from SIP_DETAY WHERE dty_RECno = sip_RECno) as Sip_Tutarı

from SIPARISLER

Gördüğünüz örnekte bir siparişin detaylarındaki dty_TFiyat stununu toplayıp getirdik. Bu şekilde her sipariş için toplam tutarı bu şekilde getirebiliriz. 

2 - COUNT() sql sayma anlamına gelir. içerisinde yazılan kolondaki satır sayısını verir. SQL hepsi anlamına gelen  ( * ) da kullanılabilir.

Örnek verecek olursak;

select 
 sip_RECno as KayıtNo
,FirmaAdi as Firma
,sip_Tarihi as Tarih

,(select COUNT(*) from SIP_DETAY WHERE dty_RECno = sip_RECno) as Sip_Adet

from SIPARISLER

Gördüğünüz örnekte ilgili siparişin kaç kalem olduğunu bu şekilde alabiliriz.


3 - ISNULL() sql de hücre boş ise gösterilmesini istediğimiz şeyleri gösterebilmemizi sağlar. Bakın hücre dedim çünkü listeleme de kullanılabilir.

Örnek verecek olursak.

select 
 sip_RECno as KayıtNo
,FirmaAdi as Firma
,sip_Tarihi as Tarih

,ISNULL(sip_Adres,' Adres Yazılmamış ') as Adres
from SIPARISLER

Gördüğünüz örnekte  siparişler tablosundaki bir siparişin adres bilgisini yazacak boş değilse adresi yazacak boş ise "Adres Yazılmamış" yazacak.



4 - MAX() sql de bir kolondaki en büyük değeri almamızı sağlar. 

select 
MAX(sip_RECno) as SonKayitNo
from SIPARISLER

Gördüğünüz örnekte siparişler tablosundaki son kayıt numarasını vermektedir.

5 - MIN() sql de bir kolondaki en küçük değeri almamızı sağlar. 

select 
MIN(sip_RECno) as SonKayitNo
from SIPARISLER

Gördüğünüz örnekte siparişler tablosundaki ilk kayıt numarasını vermektedir.

6 - AVG() sql bir kolondaki verilerin ortalamasını almamızı sağlar.

select 
,(select AVG(dty_iskonto) from SIP_DETAY WHERE dty_RECno = sip_RECno) as Sip_Ort
from SIPARISLER

Gördüğünüz örnekte bir sipariş kalemlerinde yapılan iskontoların ortalamasını almış olduk.

















0 Yorum: