SQL’de IF ve ELSE Koşulları Nasıl Çalışır?

0 Yanıt 11 Görüntülenme
Puanlayanlar
Katılımcılar
Konuyu Açan #1
SQL’de Koşullu Yapılar ve Kullanım Alanları

SQL’de koşullu ifadeler, özellikle veri sorgulama ve güncelleme işlemlerinde kararlar almak ve farklı durumlara göre farklı sonuçlar üretmek için kullanılır. En temel örnekler arasında IF ve ELSE yapıları bulunur, ancak SQL’in kendisi doğrudan bu yapıları desteklemez. Bunun yerine, çeşitli fonksiyonlar ve yapılar aracılığıyla koşullu mantık kurmak mümkündür.

Örneğin, SQL Server ve MySQL gibi veritabanlarında en yaygın kullanılan yöntem, CASE ifadesidir. CASE, belirli bir sütun veya ifade değerine göre farklı sonuçlar döndürmek için kullanılır.

Örnek: Bir çalışanın maaşını belirli koşullara göre sınıflandırmak için

KOD
123456789
SELECT isim,
       maaş,
       CASE
           WHEN maaş >= 10000 THEN 'Yüksek Maaş'
           WHEN maaş >= 5000 THEN 'Orta Maaş'
           ELSE 'Düşük Maaş'
       END AS maaş_grubu
FROM calisanlar;


İşte bu örnekte, SQL’de geleneksel anlamda IF-ELSE yapısı olmasa da, CASE ifadesiyle benzer sonuçlar alınabilir.

SQL Server’da IF ve ELSE Kullanımı
SQL Server’da, T-SQL dilinde, stored procedure veya script içerisinde IF ve ELSE ifadeleri doğrudan kullanılabilir. Örneğin:

KOD
123456789
IF EXISTS (SELECT * FROM calisanlar WHERE id = 10)
BEGIN
    UPDATE calisanlar SET maas = maas + 500 WHERE id = 10;
END
ELSE
BEGIN
    INSERT INTO calisanlar (id, isim, maas) VALUES (10, 'Ali', 3000);
END


Burada, belirli bir koşul sağlandığında güncelleme yapılır, aksi takdirde yeni kayıt eklenir. Bu yapı, SQL’in prosedürel programlama özelliklerini kullanarak karar mekanizması kurmaya imkan sağlar.

MySQL’de Koşullu İşlemler
MySQL’de ise, IF ve ELSE ifadeleri BEGIN...END blokları içinde kullanılabilir. Ayrıca, IF yapısı, stored procedure veya trigger içerisinde tercih edilir.

Özetle, SQL’de doğrudan IF-ELSE yapısı yerine, CASE ifadesi çoğu durumda karar verme mekanizması sunar. Ayrıca, prosedürel SQL kullanıyorsanız, IF/ELSE blokları ile daha karmaşık kararlar alınabilir.

Sonuç olarak, SQL koşullu yapıları, veri tabanı yönetim sistemine göre kullanılma biçimi ve mantığı değişiklik gösterebilir, ancak amaç aynıdır: farklı durumlara göre farklı işlemler veya sonuçlar üretmek.

Yanıt vermek için giriş yapmış olmalısınız.

0 alıntı seçildi