SQL DERS NOTLARI 2

İletişim Forumlar SQL SQL DERS NOTLARI 2

  • Bu konu boş.
1 yazı görüntüleniyor (toplam 1)
  • Yazar
    Yazılar
  • #880
    admin
    Üye

    SQL'DE ARİTMETİKSEL İFADELER VE FNKSİYONLAR :

    KÜME FONKSİYONLARI:

    SUM FONKSİYONU:

    SUM          TOPLA

    Fonksiyonun argümanı olarak belirtilen sütun ile ilişkili olana toplama işlemini gerçekleştirir.

    ÖRNEK:İşletmedeki personelin brüt  maaşlar toplamı  ne kadardır?

    SELECT  SUM (brüt)                                      SEÇ  TOPLA(brüt)

    FROM  personel;                                              GELİŞ  personel;

    AVG FONKSİYONU:

    AVG            ORT

    Aritmetiksel  ortalama (average) hesaplamak için kullanılır.

    SELECT  AVG(brüt)                                        SEÇ ORT (brüt)

    FROM  personel;                                            GELİŞ  personel;

    MAX FONKSİYONU:

    MAX          ÜST

    Tablo içinde ,belirtilen sutun (alan)içindeki en büyük değeri bulur.

    ÖRNEK:İşletme içindeki en yüksek maaş ne kadardır?

    SELECT  MAX (brüt)                                      SEÇ ÜST (brüt)

    FROM  personel;                                              GELİŞ personel;

    MIN FONKSİYONU:

    MIN        ALT

    Tablo içinde,belirlenen sutun alan içindeki en küçük değeri bulur.

    ÖRNEK:İşletme içinde 4 Mayıs  1970’den önce doğanlar için,asgari ücret nedir?

    SELECT  MIN(brüt)                                        SEÇ  ALT(brüt)

    FROM  personel                                              GELİŞ  personel

    WHERE dog_tar < {05/04/70};                        OLAN  dog_tar < {05/04/70}; COUNT FONKSİYONU: COUNT        SAY Tablo içinde ,her hangi bir sayma işlemi gerçekleştirmek için kullanılır. ÖRNEK:Ücreti 6000000’dan  olan personel sayısı nedir? SELECT COUNT  (*)                                      SEÇ SAY(*) FROM  personel                                              GELİŞ  personel WHERE brüt > 6000000;                                OLAN brüt > 6000000;

    COUNT (SAY)  fonksiyonu  DISTINCT (TEKRARSIZ)sözcüğü ile de  kullanılır.

    ÖRNEK:Personel tablosunda  mevcut  personelin işletme içinde kaç tane farklı  bölümde çalıştığını  bul.

    SELECT  COUNT(DISTINCT böl_no)        SEÇ SAY (TEKRARSIZ böl_no)

    FROM  personel;                                              GELİŞ  personel;

    COUNT (böl_no)                                              SAY (böl_no)

    GRUPLANDIRARAK  İŞLEM  YAPMA:

    GROUP BY          GRUPLA

    ÖRNEK: Her  bölümdeki ortalama maaş nedir?

    SELECT  böl_no,AVG (brüt)                          SEÇ böl_no

    FROM  personel                                              GELİŞ  personel

    GOUP BY böl_no;                                            GRUPLA böl_no;

    HAVING:

    HAVING          SAHİP

    Gruplandırarak  kümeleme fonksiyonunu uygularken koşulda verilebilir.Bu durumda  grup üzerindeki hesaplamalarla ilgili koşul belirtilirken HAVING (SAHİP) sözcüğü kullanılır.

    ÖRNEK:En yüksek maaşın 9000000’dan fazla olduğu bölümlerdeki personele ait ortalama maaşları listele.

    SELECT  böl_no,AVG (brüt)                          SEÇ böl_no, ORT(brüt)

    FROM personel                                                GELİŞ  personel

    GROUP BY böl_no                                          GRUPLA  böl_no

    HAVING AVG(brüt)> 9000000;                      SAHİP  ORT(brüt)> 9000000;

    HAVING(SAHİP) sözcüğü SELECT(SEÇ) konusunda GROUP BY(GRUPLA) bulunmadığı zaman geçersizdir.HAVING(SAHİP) sözcüğünü izleyen ifade içinde ,SUM(TOPLA), COUNT(*)(SAY),AVG(ORT),MAX(ÜST) yada  MIN(ALT) fonksiyonlarından en az biri bulunmalıdır.

    HAVING (SAHİP)  sözcüğü sadece gruplanmış veriler üzerindeki işlemlerde geçerlidir.

    WHERE (OLAN) sözcüğü bir tablonun tek tek satırları üzerinde işlem yapan koşullar içinde geçerlidir.

    Bazı durumlarda HAVING(SAHİP) ve WHERE(OLAN) sözcükleri ile birlikte SELECT(SEÇ) komutu içinde kullanılabilir.

    ÖRNEK:Personel tablosu içinde her bölümde erkek personele ait maaşlar için ortalamanın  9000000’dan fazla olduğu  bölümleri listele.

    SELECT böl_no, AVG (brüt)                          SEÇ böl_no, ORT (brüt)

    FROM  personel                                              GELİŞ  personel

    WHERE cins= .T.                                            OLAN cins= .D.

    GROUP BY böl_no                                          GRUPLA  böl_no

    HAVING AVG (brüt) > 9000000;                    SAHİP ORT(brüt) > 9000000;

1 yazı görüntüleniyor (toplam 1)
  • Bu konuyu yanıtlamak için giriş yapmış olmalısınız.