Programlama dillerinde kullanılan if ifadesi MySQL içerisinde belirli bir koşula veya değere göre SQL komutlarını çalıştırmayı sağlar.
MySQL if fonksiyonu SQL komutları içerisinde kullanılır. Programlama dillerindeki ternary operator ifadesine benzer.
IF(KOŞUL, DOĞRU, YANLIŞ)
MySQL IF fonksiyonunun ilk parametresine yazılan koşul doğruysa DOĞRU parametresi, yanlışsa YANLIŞ parametresi çalıştırır.
MySQL IF fonksiyonunun kullanımı;
MySQL IF fonksiyonu içerisinde SQL fonksiyonları da kullanılabilir.
MySQL if kullanımı;
MySQL elseif kullanımı;
IF içerisindeki KOŞUL yanlışsa VE ELSEIF içerisindeki KOŞUL2 doğruysa komutlar2 alanına yazılan komutlar çalıştırılır.
MySQL else kullanımı;
veya
Saklı yordamlar içerisinde if, elseif ve else kullanımı ile ilgili örnek aşağıdadır.
Parametre olarak gönderilen sayi parametresi değeri 1 ise durum parametresi Yusuf, 2 ise SEZER, 3 ise Yusuf SEZER hiçbiri değilse Yusuf Sefa SEZER değerini alır.
Saklı yordamı çalıştıralım.
Hayırlı günler dilerim.
MySQL IF fonksiyonu
MySQL if fonksiyonu ve if deyimi olmak üzere iki if ifadesini kullanmayı sağlar.MySQL if fonksiyonu SQL komutları içerisinde kullanılır. Programlama dillerindeki ternary operator ifadesine benzer.
IF(KOŞUL, DOĞRU, YANLIŞ)
MySQL IF fonksiyonunun ilk parametresine yazılan koşul doğruysa DOĞRU parametresi, yanlışsa YANLIŞ parametresi çalıştırır.
MySQL IF fonksiyonunun kullanımı;
IF fonksiyonu ayrıca tablo sorgularında da kullanılır.SELECT IF(5 > 6, "5 büyük", "6 büyük") AS sonuc;
Sorguda urunler tablosu urun_fiyat sütunundaki fiyat 30’dan büyükse PAHALI küçükse UYGUN değerini sonuc sütununa yazdıracaktır.SELECT *, IF( urun_fiyat > 30, "PAHALI", "UYGUN") AS sonuc FROM urunler;
MySQL IF fonksiyonu içerisinde SQL fonksiyonları da kullanılabilir.
Sorguda urunler tablosu urun_adi sütunundaki ürün adı uzunluğu 10 karakterden büyükse UZUN küçükse KISA değerini sonuc sütununa yazacaktır.SELECT *, IF( LENGTH(urun_adi) > 10, "UZUN", "KISA") AS sonuc FROM urunler;
MySQL IF-ELSEIF-ELSE deyimi
Konuya eklenmiş linkleri görmek için kayıt olmalısınız.
içerisinde değerleri kontrol etmek için if, elseif ve else ifadelerini kullanmayı sağlar.MySQL if kullanımı;
IF KOŞUL THEN
-- komutlar
END IF;
MySQL elseif kullanımı;
IF KOŞUL THEN
-- komutlar
ELSEIF KOŞUL2 THEN
-- komutlar2
END IF;
IF içerisindeki KOŞUL yanlışsa VE ELSEIF içerisindeki KOŞUL2 doğruysa komutlar2 alanına yazılan komutlar çalıştırılır.
MySQL else kullanımı;
IF KOŞUL THEN
-- komutlar
ELSE
-- komutlar
END IF;
veya
Tüm IF ve ELSEIF koşulları yanlışsa ELSE alanına yazılan komutlar3 çalıştırılır.IF KOŞUL THEN
-- komutlar
ELSEIF KOŞUL2 THEN
-- komutlar2
...
ELSE
-- komutlar3
END IF;
Saklı yordamlar içerisinde if, elseif ve else kullanımı ile ilgili örnek aşağıdadır.
Örnekte AdiSoyadi saklı yordamı sayi parametresine göre durum parametresine dönüş değerleri yazmaktadır.DELIMITER //
CREATE PROCEDURE AdiSoyadi(IN sayi INT, OUT durum VARCHAR(50))
BEGIN
IF sayi = 1 THEN
SET durum = 'Yusuf';
ELSEIF sayi = 2 THEN
SET durum = 'SEZER';
ELSEIF sayi = 3 THEN
SET durum = 'Yusuf SEZER';
ELSE
SET durum = 'Yusuf Sefa SEZER';
END IF;
END//
DELIMITER ;
Parametre olarak gönderilen sayi parametresi değeri 1 ise durum parametresi Yusuf, 2 ise SEZER, 3 ise Yusuf SEZER hiçbiri değilse Yusuf Sefa SEZER değerini alır.
Saklı yordamı çalıştıralım.
Saklı yordam çalıştırıldığında Yusuf Sefa SEZER değerini @sonuc değişkenine atayacaktır.SET @sonuc = 0;
CALL AdiSoyadi(99, @sonuc);
SELECT @sonuc;
Hayırlı günler dilerim.