MariaDB - Boş Değerler

NULL değerlerle çalışırken bunların bilinmeyen değerler olduğunu unutmayın. Geçerli değerler olan boş dizeler veya sıfır değildirler. Tablo oluşturmada, sütun özellikleri, bunların boş değerleri kabul etmesine veya reddetmesine izin verir. Basitçe bir NULL veya NOT NULL yan tümcesi kullanın. Bu, kimlik numarası gibi eksik kayıt bilgilerinin olduğu durumlarda uygulamalara sahiptir.

Kullanıcı tanımlı değişkenler, açık atamaya kadar NULL değerine sahiptir. Saklanan rutin parametreler ve yerel değişkenler bir NULL değeri ayarlamaya izin verir. Yerel bir değişkenin varsayılan değeri olmadığında, NULL değerine sahiptir.

NULL, büyük / küçük harfe duyarlı değildir ve aşağıdaki takma adlara sahiptir -

  • BİLİNMİYOR (bir boole değeri)
  • \N

NULL Operatörleri

Standart karşılaştırma işleçleri NULL ile kullanılamaz (ör. =,>,> =, <=, <Veya! =) Çünkü NULL değerine sahip tüm karşılaştırmalar doğru veya yanlış değil NULL döndürür. NULL ile veya muhtemelen onu içeren karşılaştırmalarda “<=>” (NULL-SAFE) operatörünün kullanılması gerekir.

Diğer mevcut operatörler şunlardır -

  • IS NULL - NULL değerini test eder.

  • IS NOT NULL - NULL değerinin olmadığını doğrular.

  • ISNULL - NULL değeri keşfedildiğinde 1 değerini ve yokluğunda 0 değerini döndürür.

  • COALESCE - Bir listenin NULL olmayan ilk değerini döndürür veya bir tane yoksa NULL değeri döndürür.

BOŞ Değerleri Sıralama

Sıralama işlemlerinde, NULL değerler en düşük değere sahiptir, bu nedenle DESC sıralaması en altta NULL değerlerle sonuçlanır. MariaDB, NULL değerleri için daha yüksek bir değer ayarlamaya izin verir.

Bunu aşağıda gösterildiği gibi yapmanın iki yolu vardır -

SELECT column1 FROM product_tbl ORDER BY ISNULL(column1), column1;

Diğer yol -

SELECT column1 FROM product_tbl ORDER BY IF(column1 IS NULL, 0, 1), column1 DESC;

NULL İşlevleri

Fonksiyonlar, herhangi bir parametre NULL olduğunda genellikle NULL verir. Bununla birlikte, NULL değerleri yönetmek için özel olarak tasarlanmış işlevler vardır. Onlar -

  • IFNULL()- İlk ifade NULL değilse onu döndürür. NULL olarak değerlendirildiğinde, ikinci ifadeyi döndürür.

  • NULLIF() - Karşılaştırılan ifadeler eşit olduğunda NULL döndürür, değilse ilk ifadeyi döndürür.

TOPLA ve AVG gibi işlevler NULL değerleri göz ardı eder.

NULL Değerleri Ekleme

NOT NULL olarak bildirilen bir sütuna NULL değer eklendiğinde, bir hata oluşur. Varsayılan SQL modunda, NOT NULL sütunu bunun yerine veri türüne göre varsayılan bir değer ekler.

Bir alan bir TIMESTAMP, AUTO_INCREMENT veya sanal sütun olduğunda, MariaDB NULL değerleri farklı şekilde yönetir. AUTO_INCREMENT sütununa ekleme, dizideki sonraki sayının yerine eklenmesine neden olur. Bir TIMESTAMP alanında, MariaDB bunun yerine geçerli zaman damgasını atar. Sanal sütunlarda, bu öğreticide daha sonra ele alınan bir konu, varsayılan değer atanmıştır.

UNIQUE dizinler birçok NULL değeri tutabilir, ancak birincil anahtarlar NULL olamaz.

NULL Değerler ve Alter Komutu

Bir sütunu değiştirmek için ALTER komutunu kullandığınızda, NULL spesifikasyonların yokluğunda MariaDB otomatik olarak değerler atar.