SQL NULLIF, SQL’de yer alan bu NullIf fonksiyonu ile eğer belirttiğiniz 2 ifade birbiriyle uyuşuyorsa geriye NULL değeri dönderilmesi sağlanmaktadır. Makale devamında NullIf bu özelliğin nasıl kullanıldığına örnek veriler ve datalar ile anlamlandırmaya çalışacağız.
SQL NULLIF Fonksiyonu Nedir ve Nasıl Kullanılır
SQL NULLIF adlı fonksiyon 2 parametre alıyor eğer iki parametre birbiriyle eşleşiyorsa geri NULL değeri dönderiliyor. Eğer uyuşmuyor ise o zaman geriye ilk parametrenin değeri dönderilmektedir. NULLIF adlı fonksiyonun örnek sözdizimi şu şekilde.
SQL NULLIF Sözdizimi (Syntax)
1 | NULLIF ('ifade 1', 'ifade 2') |
Bu fonksiyonun gerçekleştirdiği durumu CASE ile gerçekleştirmek istersek şöyle bir sözdizimi kullanabiliriz.
Örnek Kod
1 2 3 4 5 | SELECT CASE ('kolon_adi') WHEN 'ifade 1' = 'ifade 2' THEN NULL [ELSE 'ifade 1'] END FROM 'tablo_adi'; |
Şimdi NULLIF fonksiyonu için bir örnek yapalım ama öncesinde örnek yapacağımız Satis_Verisi adlı tablomuzu ve içeriğini görelim.
Sonuç
Magaza_Adi | Gercek | Hedef |
---|---|---|
Mağaza A | 50 | 50 |
Mağaza B | 40 | 50 |
Mağaza C | 25 | 30 |
Bu kurguda eğer gercek alanındaki değer hedef alanındaki değere eşit ise sorgu sonucunda 2.kolona NULL bastırılacak.
Kurguyu sorguya döküp sonucu görelim.
Örnek Kod
1 | SELECT Magaza_Adi, NULLIF (Gercek, Hedef) FROM Satis_Verisi; |
Sonuç
Magaza_Adi | NULLIF(Gercek, Hedef) |
---|---|
Mağaza A | NULL |
Mağaza B | 40 |
Mağaza C | 25 |
Daha basit örnekle olayı anlayama çalışırsak.
Örnek Kod
1 | SELECT NULLIF('Murat', 'Murat'); |
Üstteki örnek Nullif kodunun çıktısı da tabi ki NULL olacaktır. Neden? Çünkü 2 değer birbiriyle eşleştiğinden NULL değeri gönderilecektir.
Sonuç
NULLIF(‘Murat’, ‘Murat’) |
---|
(null) |
Makale içerisinde örneklerle bilgi aktarmaya çalıştım. Umarım makaleden umduğunuzu bulabilmişsinizdir ve umarım ihtiyacınızı gidermiştir. Uygun yerde kullanıldığında çok faydalı olan bu fonksiyonun ihtiyaç halinde kullanabilmek çok önemli. Bu fonksiyonu Sql Server 2008 ve sonrası sürümlerde kullanılabilmektedir. Ayrıca ihtiyaç durumunda Azure SQL Database, Azure SQL Data Warehouse, Parallel Data Warehouse ortamlarında da kullanılabilir olduğunu söylemekte fayda var.
📚 SQL NULLIF Benzeri Diğer Makaleler
- Sql de Tüm Ayların Son Günlerini Alma
- SQL Server “Cannot open user default database” hatası çözümü
- Sql Server COALESCE İfadesi Kullanımı
📚 Kaynaklar
✍ Lütfen olumlu-olumsuz tüm görüşlerinizi bana yorum yada mail yolu ile iletmeyi ihmal etmeyin.
🔗 Sosyal medya kanallarından makaleyi paylaşarak destek olursanız çok sevinirim.
👋 Bir sonraki makalede görüşmek dileğiyle.
Sıfıra bölme hatasını önlemek için kullanılabilir. paydada NULLIF(sayı, 0) şeklinde kullanıldığında divide by zero yerine null döndürerek kodun durmasına engel olabilirsiniz.
Tamam da NULLIF ‘i nerede kullanacağız. Gerçekten hayattan bir örnek verseydiniz keşke.