Anasayfa / Veritabanı/Sql / Sql ile Null Değerlerin Kontrol Edilmesi
sql

Sql ile Null Değerlerin Kontrol Edilmesi

Sql dili ve veritabanıyla ilgilenen herkesin kayıtlar içerisindeki null alanlar ile problem yaşadığı olmuştur. Öncelikle null kavramının sayı tipleri için 0, karakter tipleri içinse boşluk olmadığını söyleyerek başlayayım. Null değer daha önce ilgili alana hiçbir veri girilmediği gösteren bir belirsizlik ifade eder. Bu yüzden null olan içeriklerin birbiriyle karşılaştırılması ve kontrol edilmesi mümkün olmamaktadır.

Sql içerisinde bu problemi çözmek amacıyla Is NULL operatörü ve metodu bulunmaktadır. Öncelikle is null operatörünün kullanımına bir göz atalım.

Yukarıdaki sorgu çalıştırıldığında color sütununda değeri null olan kayıtlar listelenecek ve sorgu çıktısı aşağıdaki gibi olacaktır.

sql is null
Sql Is Null Sorgu Sonucu

Peki color değeri null olmayan kayıtları listelemek isteseydik, sorgumuzu not operatörüyle aşağıdaki gibi düzenlememiz gerekirdi.

sql is not null
Sql Is Not Null Sorgu Sonucu

Özellikle veritabanı sorguları sonucunda oluşturulan raporlama ekranlarında verilerin null olarak gösterilmesi istenmeyen bir durumdur. Bunu önlemek amacıyla isnull() fonsiyonu kullanılır.

Bu fonksiyon iki parametre almaktadır. Birinci parametreye null olup olmadığı kontrol edilecek alan, ikinci parametreye ise değer null ise döndürülecek değer girilir.

Yukarıdaki sorguda isnull metodunun aldığı ilk parametre tablodaki color sütunudur. Bu sütündaki değerin null olması durumunda ikinci parametredeki ‘Belirtilmedi’ yazısı gösterilecektir. Yukarıdaki sorgu çalıştırıldığında aşağıdaki gibi bir sonuç listesi döndürülür.

sql is null metodu
Sql IsNull() metodu Sorgu Sonucu

Yukarıda ki örneklerin hepsinde AdventureWorks2012 veritabanında ki Production.Product tablosu kullanılmıştır. Eğer select sorguları ile ilgili detaylı bilgi almak isterseniz tıklayınız. Konuyla ilgili tüm sorularınızı bana iletebilirsiniz.

İlginizi Çekebilir!

sql sorguları

Sql (Count, Max, Min, Sum, Avg) Fonksiyonlarının Group By İle Kullanımı

Sql ile basit sorgular öğrenildikten sonra istatistiki raporlamalar için Count, Max, Min, Sum ve Avg …


2 Yorumlar

  1. Ahmet Karakurt

    Peki SQL de Şartlı Sildirme Nasıl Yapabilirim ? Yani Delete From satisrezerve where s_tarih = Date() and sozlesme Is Null “; Böyle Olmuyor

  2. ahmet mücahit polat

    merhabalar bir problemim var yardımcı olursanıoz çok sevinirim. c# tarafında sql ile bir sorgu oluşturuyorum. Programda şunu istiyorum. iki adet radio butonum var. birincisi seçili ise veritabanında o alana ait yere ok yazısı yazdırıyorum ve diğerini null değer olarak atamak istiyorum. İKinci radio buton içinde aynısı geçerli. Seçtiğim radio butona göre güncelleme komutunu kullanıyorum. Seçili olmayanı null değer olarak güncellemek istiyorum. Bunun için ne yapmam gerekiyor. BİR DEĞİŞKENE NULL DEĞERİNİ VERİP DENEDİM OLMADI. isnull() fonksiyonu ilede olmadı.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Time limit is exhausted. Please reload the CAPTCHA.