Kenan kılıçaslan

  • Baca Hesabı
  • Sürtünme Kaybı
  • Diferansiyel Denklem
  • Denklem Çözümü
SQL Server

IF...ELSE... Deyimi

If else yapısı her programlama dilinde olduğu gibi belirtilen koşulların kontrolünü sağlamakta kullanılır.

Stored procedure ve Batch içinde kullanılabilir.

IF koşul
    Doğru ise çalışacak Sql deyimi
IF koşul
    Doğru ise çalışacak Sql deyimi
ELSE
    Yanlış ise çalışacak sql deyimi

If içinde birden fazla sql komutu bulunacak ise bu komutlar BEGIN ... END arasına konur

IF koşul
    BEGIN
        Doğru ise çalışacak Sql deyimi
    END
IF koşul
    BEGIN
        Doğru ise çalışacak Sql deyimi
    END
ELSE
    BEGIN
        Yanlış ise çalışacak sql deyimi
    END
IF @para>500
    Select * from personel  -- if içinde koşula bağlı çalışır
    Select * from satis   -- if içinde değil
IF @para>500
BEGIN
    Select * from personel  --koşula bağlı
    Select * from satis   -- koşula bağlı
END

Örnek:
Personel tablosunda maaş ortalaması 1000’den büyük ise “maaş ortalaması yüksek”, küçük ise “maaş ortalaması düşük” mesajı versin.

IF (select avg(maas) from tbl_personel)>1000
    Print 'Maaş ortalaması yüksek'
ELSE
    Print 'Maaş ortalaması düşük'
Go

Örnek:
Yukarıdaki kodu değişken tanımlayarak yeniden yazalım.

DECLARE @ortalama money
SELECT @ortalama=(select avg(maas) from tbl_personel)

IF @ortalama>1000
    Print 'Maaş ortalaması yüksek'
ELSE
    Print 'Maaş ortalaması düşük'

Yukarıdaki kodda
* @ortalama isimli değişken tanımladık.
* Bu değişkene personel tablosunun ortalamasını atadık.
Ortalama değişkeninin değerinin 1000’den büyük olup olmadığını kontrol ettik. Büyükse 'Maaş ortalaması yüksek', değilse 'maaş ortalaması düşük' mesajı verdirdik ve @ortalama değişkenini yazdırdık.

beyaz_sayfa_en_alt_oval