IsNull - kod ve grafik fonksiyonu
IsNull fonksiyonu, bir ifadenin değerinin NULL olup olmadığını test eder; öyleyse -1 (True) döndürür, aksi takdirde 0 (False) döndürür.
Söz Dizimi:
IsNull(expr )
Dönüş verileri türü: Boole
Bağımsız Değişken | Açıklama |
---|---|
expr | Hesaplanacak verileri içeren ifade veya alan. |
Örnek | Sonuç |
---|---|
IsNull(Productname) |
ProductName null bir değer ise -1 (True), aksi takdirde 0 (False) döndürür. |
Örnek - IsNull temel bilgileri
Genel bakış
Veri yükleme düzenleyicisini açın ve aşağıdaki yükleme kodunu yeni bir sekmeye ekleyin.
Yükleme kodu şunları içerir:
-
Example adlı veri tablosuna yüklenen bir veri kümesi.
-
Veri tablosundaki şu alanlar:
-
ID
-
Value
-
Komut dosyası
Example:
LOAD * Inline
[ID, Value
0,
1,NULL
2,-
3,378];
Sonuçlar
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:
-
ID
-
Value
Aşağıdaki hesaplanan boyutları oluşturun:
-
=If(len(trim(Value))= 0 or Value='NULL' or Value='-', Null(), Value ), Value alanında değer yoksa bir tire (-) karakteri veya NULL değeri varsa NULL döndürmek için, aksi takdirde değeri döndürür.
-
=If(IsNull(If(len(trim(Value))= 0 or Value='NULL' or Value='-', Null(), Value )), 'T', 'F'), Value alanının null değer içerip içermediğine bağlı olarak T (True) veya F (False) değerini döndürmek için.
ID | Value | If(len(trim(Value))= 0 or Value='NULL' or Value='-', Null(), Value ) | If(IsNull(If(len(trim(Value))= 0 or Value='NULL' or Value='-', Null(), Value )), 'T', 'F') |
---|---|---|---|
0 | - | T | |
1 | NULL | - | T |
2 | - | - | T |
3 | 378 | 378 | F |
Value sütunu, veri kümesine girilen verileri gösterir. İlk hesaplama (sütun 3), değeri IF deyiminin koşullarını karşılayan ilk 3 satır için NULL döndürür: len(trim(Value))= 0 or Value='NULL' or Value='-'. Son satır, girilen 378 değerini döndürür.
İkinci hesaplama (sütun 4), sütun 3'teki ifadenin değerini alır ve NULL ise T veya NULL değilse F döndürür. Sonuçlar, ilk 3 satırın boş değerler olduğunu göstermektedir.
Bu örnekte, ilk üç satırı Value sütununda hiçbir şey içermeyen ya da bir tire - veya NULL metni içeren dört satırlı bir satır içi tablo yüklenmektedir. Null fonksiyonunu kullanarak orta öncelikli LOAD ile bu değerleri doğru NULL değer temsillerine dönüştürüyoruz.
İlk öncelikli LOAD deyimi, IsNull fonksiyonunu kullanmak suretiyle değerin NULL olduğunu kontrol ederek bir alan ekler.
NullsDetectedAndConverted:
LOAD *,
If(IsNull(ValueNullConv), 'T', 'F') as IsItNull;
LOAD *,
If(len(trim(Value))= 0 or Value='NULL' or Value='-', Null(), Value ) as ValueNullConv;
LOAD * Inline
[ID, Value
0,
1,NULL
2,-
3, 378];
Ortaya çıkan tablo aşağıdadır. ValueNullConv sütununda NULL değerler - ile temsil edilmektedir.
ID | Value | ValueNullConv |
IsItNull |
---|---|---|---|
0 | - | T | |
1 | NULL | - | T |
2 | - | - | T |
3 | 378 | 378 | F |
Örnek - IsNull senaryosu
Genel bakış
Satış verilerinden oluşan bir veri kümesi, hangi alanların null değerlere sahip olduğunu görmek için analiz edilir.
Veri yükleme düzenleyicisini açın ve aşağıdaki yükleme kodunu yeni bir sekmeye ekleyin.
Yükleme kodu şunları içerir:
-
Example adlı veri tablosuna yüklenen bir veri kümesi.
-
NULL olarak ayarlanmış bir NULLINTERPRET değişkeni.
-
Veri tablosundaki şu alanlar:
-
SalesID
-
Name
-
Age
-
Email
-
Region
-
Status
-
Komut dosyası
Set NULLINTERPRET = NULL;
Example:
LOAD * Inline [
SalesID, Name, Age, Email, Region, Status
1, John Smith, 30, john@email.com, North, Active
2, Jane Doe, NULL, jane@email.com, South, Active
3, Bob Johnson, 45, NULL, East, Inactive
4, Alice Brown, 28, alice@email.com, West, Active
5, Charlie Lee, NULL, charlie@email.com, NULL, Active
6, Eva Green, 35, eva@email.com, North, NULL
7, David White, 50, NULL, South, Inactive
8, Fiona Black, 42, fiona@email.com, East, Active
];
Sonuçlar
Verileri yükleyin ve bir sayfa açın. Yeni bir tablo oluşturun ve şu alanları boyut olarak ekleyin:
-
SalesID
-
Name
Aşağıdaki hesaplanan boyutları oluşturun:
-
=If(IsNull(Age), 'Age unavailable', Age), NULL ise Age alanını Age unavailable değeriyle doldurmak için.
-
=If(IsNull(Email), 'Email unavailable', Email), NULL ise Email alanını Email unavailable değeriyle doldurmak için.
-
=If(IsNull(Region), 'Region unavailable', Region), NULL ise Region alanını Region unavailable değeriyle doldurmak için.
SalesID | Name | If(IsNull(Age), 'Age unavailable', Age | If(IsNull(Email), 'Email unavailable', Email) | If(IsNull(Region), 'Region unavailable', Region) |
---|---|---|---|---|
1 | John Smith | 30 | john@email.com | North |
2 | Jane Doe | Age unavailable | jane@email.com | South |
3 | Bob Johnson | 45 | Email unavailable | East |
4 | Alice Brown | 28 | alice@email.com | West |
5 | Charlie Lee | Age unavailable | charlie@email.com | Region unavailable |
6 | Eva Green | 35 | eva@email.com | North |
7 | David White | 50 | Email unavailable | South |
8 | Fiona Black | 42 | fiona@email.com | East |
Null değer olup olmadığını kontrol eden ve null değer bulunursa true değerini döndüren IsNull fonksiyonunun sonuçları, veri kümesindeki birkaç alanın boş değer içerdiğini gösterir. Örneğin, Charlie Lee için Age sütununda boş bir değer tespit edildi ve Age unavailable çıktısı döndürüldü.