Sql Serverda kullanılan ISNULL fonksiyonunun işlevini anlatan bir makaledir. IsNull fonksiyonu kendisine parametre olarak verilen değeri kontrol eder.
- Yazılım Uzmanları
- 13 Mayıs 2018
- 5119 kez görüntülendi.
Sql Serverda kullanılan ISNULL fonksiyonunun işlevini anlatan bir makaledir. IsNull fonksiyonu kendisine parametre olarak verilen değeri kontrol eder. Eğere parametre olarak aldığı değer null bir değerse, yine kendisine ikinci bir parametre olarak verilen değeri döner.
ISNULL Fonksiyonunun Kullanımı:
ISNULL(Kontrol Edilecek Değer,Eğer Kontrol Edilecek Değer Null ise Geri Dönecek Olan Değer)
ISNULL() Fonksiyonunun kullanım alanı geniştir. Sadece bir değer de verebilirsiniz, isterseniz yaptığınız bir sorgunun içeriğini de kontrol edebilirsiniz.
Örnek olarak aşağıdaki gibi bir ürün tablomuz olduğunu varsayalım.
fldUrunAdi | fldKategorisi | fldAltKategorisi |
Nokia 5310 | 1 | 2 |
Asus F3Z5 | 4 | 3 |
IPhone | Null | 3 |
Mouse | 4 | Null |
Örnek1:
Yukarıdaki tabloda Kategori ve AltKategori kolonları başka bir tablodaki Kategori ve AltKategoriAdlarını göstermektedir.Yazacağımız sorguda
Kategori ve AltKategori adlarını başka bir tablodan çekeceğiz ve eğer bu alanlardan herhangi biri boş dönerse Kategori Yok veya Alt Kategori Yok gibi
bir değer dönmesini sağlayacağız.Aşağıdaki sorguyu inceleyelim:
Select fldUrunAdi,
ISNULL((Select K.fldKategoriAdi From tblKategori K Where K.fldKategoriId=fldKategoriId),'Kategori Yok') KategoriAdi,
ISNULL((Select AK.fldAltKategoriAdi From tblAltKategori AK Where AK.fldAltKategoriId=fldAltKategoriId),'Alt Kategori Yok') AltKategoriAdi
From tblUrun
Yukarıdaki sorguyu execute ettiğimizde, tblUrun tablosundan fldUrunAdi' ni alacak, daha sonra fldKategori kolonunu alacak ve tblKategori tablosunda bu
id' ye eşit bir değer olup olmadığına bakacak. Eğer id' ye eşit olan bir değer varsa bu değeri alacak. Yoksa 'Kategori Yok' diye bir değer dönecek. Aynı işlemi
Alt Kategori kolonu için de yapacak.Çalıştırdığımız sorgunun cevabı aşağıda:
fldUrunAdi | fldKategorisi | fldAltKategorisi |
Nokia 5310 | Elektronik | Telefon |
Asus F3Z5 | Elektronik | Dizüstü Bilgisayar |
IPhone | Kategori Yok | Alt Kategori Yok |
Mouse | Elektronik | Alt Kategori Yok |
Örnek 2:
Yine ürün tablomuzu örnek alarak aşağıdaki sorguyu inceleyelim:
Select fldUrunAdi,
ISNULL(fldKategorisi,'Boş Kategori'),
ISNULL(fldAltKategorisi,'Boş Alt Kategori')
From tblUrun
Örnek2 de yazdığımız sorgunun cevabı:
fldUrunAdi | fldKategorisi | fldAltKategorisi |
Nokia 5310 | 1 | 2 |
Asus F3Z5 | 4 | 3 |
IPhone | Boş Kategori | 3 |
Mouse | 4 | Boş Alt Kategori |
Bu sorgunun anlaşılması daha kolay.Urun tablosundan urunleri çekecek. Çektiği değerleri kontrol edecek. Eğer fldKategorisi hücresi Null ise 'Boş Kategori' değerini dönecek.Aynı işlemi fldAltKategorisi için de yapacak.Böylece ISNULL fonksiyonunu kullanarak Null bir değer varsa düzenliyoruz ve olası bir cast işleminde veya,
herhangi bir işlemimizde meydana gelebilecek hataların önüne geçmiş oluyoruz.
Bu yazıya 0 yorum yapılmış.