SQL | BOŞ işlevler

SQL | BOŞ işlevler

Veritabanında boş değerler, eksik veya mevcut olmayan veriler için yer tutucu görevi görür. null değeri, string int blob ve CLOB veri türleri de dahil olmak üzere herhangi bir veri türünün sütununa yerleştirilebilen esnek bir veri türüdür. Belirli bir veri türünün bir bileşeni değildir. Boş değerler, keşifsel analizden önce verileri temizlerken faydalıdır.

Boş değerler veri belirsizliğini ortadan kaldırmamıza yardımcı olur. Boş değerler ayrıca sütun genelinde tutarlı bir veri türü sağlamak için de kullanışlıdır. Bu yazımızda Null değerleri kullanmanın gerekliliğini ve yönergelerini öğreneceğiz. Şimdi boş değerleri ve boş işlevleri daha iyi anlamaya çalışmak için örnekler kullanalım. SQL .

SQL'de NULL kullanımına ilişkin bazı önemli noktalar:

    NULL ile karşılaştırma: '=' ' gibi normal karşılaştırma işleçleri kullanılarak NULL ile karşılaştırmalar <>'' <' '>' doğru veya yanlış sonuç vermez, bunun yerine bilinmeyen veya NULL sonucunu üretir. Bunun yerine, NULL değerlerini kontrol etmek için IS NULL veya IS NOT NULL operatörlerini kullanmanız gerekir.  İfadelerde NULL'u işlemek: NULL değerleri içeren aritmetik veya diğer işlemleri gerçekleştirirken sonuç genellikle NULL olur. Örneğin, NULL işleneni içeren herhangi bir aritmetik işlem NULL sonucuyla sonuçlanacaktır. NULL değerleri toplama: SUM gibi SQL'deki çoğu toplama işlevi AVG COUNT vb. sonuçları hesaplarken NULL değerlerini dikkate almaz. Ancak COUNT(*) gibi NULL değerleri dikkate alan bazı toplama işlevleri vardır.  İndeksleme ve NULL: Bazı veritabanı sistemleri, indeksleme söz konusu olduğunda NULL değerlerini farklı şekilde işler. 
  1. Dizin yapılarında NULL değerlerinin nasıl ele alındığını anlamak için veritabanı yönetim sisteminizin özel belgelerine başvurmanız önemlidir. Potansiyel tuzaklar: NULL değerlerinin varlığı, verileri sorgularken veya işlerken karmaşıklığa ve potansiyel tuzaklara neden olabilir. Beklenmeyen veya yanlış sonuçlardan kaçınmak için SQL sorgularında NULL değerlerinin uygun şekilde işlenmesi dikkatli bir şekilde düşünülmesini gerektirir.

Neden NULL Değerlere İhtiyacımız Var?

Veritabanında depolanan boş değerler üzerinde işlem gerçekleştirmek için boş işlevler gereklidir. İle HÜKÜMSÜZ değerlere göre değerin null olup olmadığını açıkça belirleyen işlemler gerçekleştirebiliriz. Boş verileri tanıma özelliği sayesinde bunlar üzerinde SQL'in birleştirme yöntemlerine benzer işlemler gerçekleştirilebilir.

SQL'de tanımlanan NULL işlevler şunlardır:

ISNULL()

ISNULL işlevinin SQL Server ve MySQL'de farklı kullanımları vardır. SQL Server'da ISNULL() işlevi NULL değerleri değiştirmek için kullanılır. 

Sözdizimi:

Sütun(lar)ı SEÇ ISNULL(sütun_adı değeri_to_değiştirilecek)

FROM tablo_adı;

Örnek : Aşağıdaki Çalışan tablosunu göz önünde bulundurun

SQL | BOŞ işlevler 

Herhangi bir çalışanın Maaşı mevcut değilse (veya NULL değeri) tüm Çalışanların maaşının toplamını bulun, maaşı 10000 olarak kullanın.

Sorgu:

SELECT SUM(ISNULL(Salary 10000) AS Salary FROM Employee; 

Çıkış

SQL | BOŞ işlevler 

MySQL'de ISNULL() fonksiyonu bir ifadenin NULL olup olmadığını test etmek için kullanılır. İfade NULL ise TRUE, aksi takdirde FALSE değerini döndürür. 

Sözdizimi:

Sütun(lar)ı SEÇİN

FROM table_name

WHERE ISNULL(sütun_adı);

Örnek : Aşağıdaki Çalışan tablosunu göz önünde bulundurun

SQL | BOŞ işlevler 

Maaşları tabloda mevcut olan tüm çalışanların adlarını getirin (BOŞ değil).

Sorgu:

SELECT Name FROM Employee WHERE ISNULL(Salary); 

Çıkış: 

SQL | BOŞ işlevler 

IFNULL()

Bu işlev MySQL'de mevcuttur, SQL Server veya Oracle'da yoktur. Bu fonksiyon iki argüman alır. İlk argüman NULL değilse, işlev ilk argümanı döndürür. Aksi halde ikinci argüman döndürülür. Bu işlev genellikle NULL değerini başka bir değerle değiştirmek için kullanılır. 

Sözdizimi:

Sütun(lar)ı SEÇ IFNULL(sütun_adı değer_to_değiştirilecek)

FROM tablo_adı;

Örnek : Aşağıdaki Çalışan tablosunu göz önünde bulundurun

SQL | BOŞ işlevler 

 Herhangi bir çalışanın Maaşı mevcut değilse (veya NULL değeri) tüm Çalışanların maaşının toplamını bulun, maaşı 10000 olarak kullanın.

Sorgu;

SELECT SUM(IFNULL(Salary 10000) AS Salary FROM Employee; 

Çıkış :

SQL | BOŞ işlevler 

BİRLEŞME()

SQL'deki COALESCE işlevi, bağımsız değişkenleri arasında NULL olmayan ilk ifadeyi döndürür. Tüm ifadeler null olarak değerlendirilirse COALESCE işlevi null değerini döndürür. 

Sözdizimi :

Sütun(lar)ı SEÇ CAOLESCE(ifade_1....ifade_n)

FROM tablo_adı;

Örnek

Aşağıdaki Contact_info tablosunu göz önünde bulundurun 

SQL | BOŞ işlevler 

Her çalışanın adını ve iletişim numarasını alın.

Sorgu:

SELECT Name COALESCE(Phone1 Phone2) AS Contact FROM Contact_info; 

Çıkış

SQL | BOŞ işlevler 

NULLIF()

NULLIF işlevi iki bağımsız değişken alır. İki bağımsız değişken eşitse NULL döndürülür. Aksi halde ilk argüman döndürülür. 

Sözdizimi:

Sütun(lar)ı SEÇ NULLIF(ifade1 ifade2)

FROM tablo_adı;

Örnek : Aşağıdaki Satış tablosunu göz önünde bulundurun SQL | BOŞ işlevler

SELECT Store NULLIF(Actual Goal) FROM Sales; 

Çıkış

 

Çözüm

Bu yazıda null değerlerin ne olduğunu ve bunları neden kullanmamız gerektiğini öğrendik. Artık NULL değerleri kullanmanın veritabanları için temel olduğunu ve bunun bütünlüklerini korumak için yapıldığını biliyoruz. Bunu takiben NULL değerlerle kullanılabilecek farklı işlevler hakkında daha fazla şey öğrendik. Sonuç olarak SQL'deki NULL değeri, belirli bir veri alanı için yokluğu veya bilinmeyen değeri temsil eder. NULL değerlerini doğru bir şekilde işlemek ve olası tuzaklardan kaçınmak için sorgular ve ifadeler yazarken özel dikkat gerektirir.

Test Oluştur