C#Görsel Programlama IIOperatörlerSQLYazılım

C# istatistiksel Sorgulamalar (AVG-SUM-COUNT-FIRST-LAST-MİN-MAX-STDEV-GROUP BYE -HAVING)

Selamun aleyküm otomasyon projelerimizin hemen hemen hepsinde ihtiyacımız olan cari modülünde bazı işlemler yapmamız gerekebilir.Bu işlemler için uzun uzun algoritmalar kullanmak yerine C# istatistiksel Sorgulamalar yaparak hem kod şişmesini önleyebilir , hem kod karmaşasından kurtulabilir hemde yüksek performans sağlayabiliriz.

 İSTATİSTİKSEL SORGULAMALAR YAPMAK

 



Sorgulamalarda matematiksel fonksiyonlar:

AVG(kolon ):
Girilen kolondaki sayıların aritmetik ortalama degerini geri yollar
SUM(kolon ):
Girilen kolondaki sayıların toplamını yollar
COUNT(kolon ):
Boş degerler haric, girilen kolondaki satır sayısını yollar
COUNT(* ):
Verilen tablodaki satır sayısını yollar
FIRST(kolon ):
Girilen kolondaki ilk degeri yollar
LAST(kolon ):
Girilen kolondaki son degeri yollar
MAX(kolon ):
Girilen kolondaki en yuksek degeri yollar
MIN(kolon ):
Girilen kolondaki en dusuk degeri yollar
STDEV(kolon ):
Girilen kolondaki basit istatiksel standard sapma degerini yollar
STDEVP(kolon ):
Girilen kolondaki nüfus istatiksel standard sapma degerini yollar

Sütun İçindeki Verilerin Ortalamasını Hesaplama (AVG)

Belirli bir sütundaki sayısal verilerin ortalamalarını bularak sonucun gösterilmesinde AVG
işleci kullanılır.

Formülümüz :

 

Örneğin memur tablosundaki memurların maaşlarının ortalamasını hesaplayan Sql komutunu
yazalım.

 

 

Dilersek belli bir koşula göre de ortalama hesaplayabiliriz. Memur tablosundaki maaşı
2500 tl den düşük olanların maaş ortalamasını bulalım.

 

 

Sütun İçindeki Verilerin Toplamını Hesaplama (SUM)

Belirli bir sütundaki sayısal verilerin toplamını hesaplamak için Sum işleci kullanılır.

 

 

Örneğin öğrenci tablosundaki öğrencilerin notlarını toplamını hesaplayalım:

 

 

Eğer koşula göre yapacaksak where işleciyle beraber koşulu belirtmemiz gerekir.

(COUNT) Kayıtları Saydırma İşlemi

Sorgunun ürettiği satır sayısını döndürür.

 

 

Personel tablosundaki kayıt sayısını listelemek için aşağıdaki komutu yazmalıyız.

 

 

Ya da personel tablosundaki yaşı 45 den küçük olan personel sayısını bulmak için:

 

 

COUNT(kolon )

Boş degerler haric, girilen kolondaki satır sayısını yollar

 

 

ogrenci tablosundaki yaşı alanında bulunan dolu kayıtları listelemek için kullanılır:

 

 

 FIRST(kolon )

Girilen kolondaki ilk degeri alır ve kullanıcıya döndürür

 

 

Hesap tablosunun içersin de ki sayı alanından ilk veriyi bulma;

 

 

Last( kolon )

Girilen kolondaki son degeri alır ve kullanıcıya döndürür

 

 

Hesap tablosunun içersin de ki sayı alanından son veriyi bulma;

 

Sütun İçindeki En Büyük veya En Küçük Değerleri Gösterme (MİN\MAX)



Belirli bir sütundaki en büyük veriyi görüntülemek için MAX, en küçük veriyi görüntülemek
için ise MİN fonksiyonları kullanılır.

Örneğin memur  tablosundaki en yüksek maaşı listeleyelim:

Örneğin memur  tablosundaki en düşük maaşı listeleyelim:

STDEV(kolon )

Girilen kolondaki basit istatiksel standart sapma değerini yollar

 

 

Örneğin memur tablosundaki maaşların standart sapmasını hesaplayalım:

 

 

GROUP BY Kullanımı

Girilen kolondaki nüfus istatiksel standart sapma değerini yollar

Bir fonksiyonu kullanırken bazı durumlarda GROUP BY fonksiyonu ile belli alanlara göre
gruplamak gerekebilir.

GROUP BY Kullanım Biçimi

 

 

Aşağıdaki gibi Ürünler tablomuz olsun

 

 

Örnek: Urun_adi alanına göre bir gruplama işlemi yapılmıştır. Ve her grubun fiyatı ayrı olarak
toplanmıştır.

 

 

Çıktısı:

Aşağıdaki örnekte bu ismi daha anlamlı hale nasıl getirildiğini görebilirsiniz.

Örnek 2:

Çıktısı:

Burada ürünler gruplanıp, hangi üründen kaç tane olduğu bilgisi elde edilmiş. Burada AS ile
ilgili alanın adı daha anlamlı bir hale getirilmiştir

 

HAVING Kullanımı

HAVING yapısı temelde WHERE ile aynı görevi yapmaktadır. GROUP BY ile kullanılır.
Where ifadesi ile belirtilen kriter Group By uygulanmadan önce geçerli olurken, Having ifadesi
ile belirtilen kriter ise group by uygulandıktan sonra ortaya çıkan verileri filtrelemek
için kullanılır.
Ayrıca Where ifadesinden sonra sum, avg gibi fonksiyonlar kullanılamazken, Having ile kullanılabilir.

 

HAVING Kullanım Biçimi



 

Burada operatör ile belirtilen yere =, <, >, % gibi operatörler kullanılır.
Aşağıdaki gibi tablomuz olsun.

 

Örnek 1:

Çıktısı:

Bu örnekte WHERE kullanılarak maaşı 2000 TL den fazla olan personeller seçilmiş ve bunlar
gruplanarak illere maaşları toplamları bulunmuştur.
Burada görüleceği üzere WHERE ifadesi ile önce ki kriteri belirttik ve tablomuzdaki bazı kayıtlar
devre dışı bıraktık. Sonrada kalan kayıtları grupladık.

Örnek 2:

Çıktısı:

Bu örnek aslında birinci örneğin devamı gibidir. WHERE ile bir şart koyup kayıtları azalttıktan
sonra Group By ile grupladık. Daha sonra bu gruplanmış veriye ayrı bir şart koşuyoruz.
Yani illere göre maaş toplamı 2000 den büyük olan kayıtları bulup sonra bunları şehire göre
grupladık ve ortaya çıkan bu kayıtlardan şehir alanı S harfi ile başlayanları seçtik.

HAVING Kullanma Kuralları

• Select komutunda GROUP BY yoksa HAVING geçersiz olur.
• HAVING sözcüğünü izleyen ifade içinde SUM, MIN, MAX, AVG, COUNT fonksiyonlarından
en az biri mutlaka olmalıdır.
• HAVING sözcüğü sadece ve sadece gruplanmış verilerin işlemleri için geçerlidir.
• WHERE ile birlikte bir Select komutu içinde kullanılabilir.

WHERE ve HAVING arasındaki fark:

WHERE bir tablonun tek satırları üzerinde işlem yapan koşullar içinde geçerlidir. HAVING
gruplanmış verilerin işlemleri için geçerlidir.

Diğer yazılım makalelerimiz için

Facebook Grubumuz İçin Tıklayın

Bu konudaki diğer makalemiz buyrun :

http://ramazanakbuz.com/c-istatistiksel-sorgulamalar/

Seo Keyword
C# istatistiksel Sorgulamalar , C# istatistiksel Sorgulamalar , C# istatistiksel Sorgulamalar , C# istatistiksel Sorgulamalar , C# istatistiksel Sorgulamalar
Kaynakça
• Ramazan Şerif Akbuz • AKTAŞ, V. (2014). Her Yönüyle C# 6.0.Kodlab. İstanbul: Yenibosna. • ALGAN, S. (2013). Her Yönüyle C#. Pusula. İstanbul: Beşiktaş. • http://www.megep.meb.gov.tr/mte_program_modul/moduller_pdf/Nesne%20 Tabanl%C4%B1%20Programlamada%20Veri%20Y%C3%B6netimi.pdf



Etiketler

Ramazan Şerif

Selamun Aleyküm Adım Ramazan Şerif Akbuz. Bilişime olan merakım ortaokul yıllarımda başladı.7.Sınıfta Türkiye Eğitim Gönülleri Vakfı aracılığı ile girdiğim Legorobot yarışmasında Türkiye de ilk 20 ye girdik.Bilişime olan heyecanım lise yıllarımda da devam etti.Liseyi Veritabanı Programcılığı bölümünde okudum.Matematiğim zayıftı bende 2 yıllık Omü bilgisayar programcılığına geçiş yaptım.Okulu başarıyla bitirdim.2 Yıldır bir yandan Freelance olarak çalışıyor , bir yandanda iş arıyorum.Bakdım olacağı yok birazda kendimi geliştirme kararı aldım.DGS ile Fırat Üniversitesi Yazılım Mühendisliğine geldim.Maceranın devamında bir baltaya sap olabilmek dileğiyle "Zaman zam anıdır Gülüşüme sende gül üşüme"

Bir Cevap Yazın

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Göz Atın

Kapalı
Başa dön tuşu
Kapalı

Selamun Aleyküm arkadaşlar !

Adım Ramazan Şerif AKBUZ yazılım mühendisliği öğrencisiyim

Sitemin aylık masraflarını karşılayabilmesi için reklamlara ihtiyacı var.Bu reklamlar kumar , çıplaklık vs içermiyor.Lütfen emeğe saygı  bana destek olur musunuz? Reklama Tıklayın demiyorum Biraz katlanın yeter.


 

ReklamEngelleme




Sitemde herhangi rahatsızlık verici cinsel ,kumar vb reklam bulunmamaktadır.Siteme gelen ziyaretçilerin geneli adblockler tarzı reklam engelleme programları kullanmaktadır.Lütfen destek amaçlı siteme bu tür programlar ile girmeyiniz.

%d blogcu bunu beğendi: