Ana içeriğe geç

Isnull

isnull, bir değerin null olup olmadığını kontrol eder; bu, bir şey eksik veya bilinmediğinde bir veritabanı tarafından kullanılan özel bir yer tutucudur.

Sözdizimi

isnull(text column)

isnull ifadesini özel filtrelerde veya koşullu toplama işlemleri CountIf ve SumIf için koşul olarak kullanabilirsiniz. isnull kullanarak özel bir sütun oluşturmak için, isnull ifadesini boolean değerleri kabul eden başka bir işlevle birleştirmeniz gerekir, örneğin case.

Patrona'nın null değerleri nasıl ele aldığı

Patrona tablolarında, null değerler boş hücreler olarak görüntülenir. Ayrıca, string sütunlar için, boş stringler ve yalnızca boşluk karakterleri içeren stringler de boş olarak görüntülenir.

Aşağıdaki tablo, isnull ifadesinin çıktısının örneklerini gösterir.

Patrona gösterirVeritabanı değeriisnull(value)
nulltrue
"" (boş string)false*
" " (boşluk)false
kedi"kedi"false

*Oracle ve Vertica veritabanlarında, boş stringler null olarak kabul edilir.

Boolean özel sütun oluşturma

isnull kullanarak özel bir sütun oluşturmak için, isnull ifadesini başka bir işlevle birleştirmeniz gerekir. Örneğin, İndirim sütununun null olduğu durumlarda true, aksi takdirde false içeren bir özel sütun oluşturmak istiyorsanız, case ifadesini kullanabilirsiniz:

case(isnull([İndirim]), true, false)

Null değerleri başka bir değerle değiştirme

Eksik bilgileri daha açıklayıcı bir şeyle değiştirmek için isnull ifadesini case ifadesi ile birleştirin:

Örneğin, orijinal [Geri Bildirim] sütunu null olduğunda "Bilinmeyen geri bildirim" içeren ve [Geri Bildirim] sütununun bir değeri olduğunda gerçek geri bildirim değerini içeren yeni bir özel sütun oluşturabilirsiniz. Bunu yapmak için özel ifade:

case(isnull([Geri Bildirim]), "Bilinmeyen geri bildirim.", [Geri Bildirim])
Geri Bildirimcase(isnull([Geri Bildirim]), "Bilinmeyen geri bildirim.", [Geri Bildirim])
null"Bilinmeyen geri bildirim."
""""
"Tarzınızı beğendim.""Tarzınızı beğendim."

Kabul edilen veri türleri

Veri türüisnull ile çalışır
String
Number
Timestamp
Boolean
JSON

Sınırlamalar

  • Patrona'da, isnull ifadesini boolean argümanları kabul eden başka bir ifadeyle birleştirmeniz gerekir (örneğin, true veya false).
  • isnull ifadesi aynı anda yalnızca bir değeri kabul eder. Birden fazla sütundaki boş hücrelerle başa çıkmanız gerekiyorsa, coalesce ifadesine bakın.
  • isnull ifadesi boş hücrelerinize herhangi bir şey yapmıyor gibi görünüyorsa, boş stringleriniz olabilir. Bunun yerine isempty ifadesini deneyin.

İlgili işlevler

Bu bölüm, Patrona isnull ifadesiyle değiştirilebilir şekilde kullanılabilecek işlevleri ve formülleri kapsar ve kullanım durumunuza en uygun seçeneği nasıl seçeceğinize dair notlar içerir.

Aşağıdaki tüm örnekler, Null değerleri başka bir değerle değiştirme örneğindeki tabloyu kullanır:

Geri Bildirimcase(isnull([Geri Bildirim]), "Bilinmeyen geri bildirim.", [Geri Bildirim])
null"Bilinmeyen geri bildirim."
""""
"Tarzınızı beğendim.""Tarzınızı beğendim."

SQL

Çoğu durumda (NoSQL veritabanı kullanmıyorsanız), sorgu oluşturucudan oluşturulan sorular, veritabanınıza veya veri ambarınıza karşı çalışan SQL sorgularına dönüştürülür.

CASE WHEN Geri Bildirim IS NULL THEN "Bilinmeyen geri bildirim",
ELSE Geri Bildirim END

Patrona isnull ifadesine eşdeğerdir:

case(isnull([Geri Bildirim]), "Bilinmeyen geri bildirim.", [Geri Bildirim])

Elektronik Tablolar

Elektronik tablo #N/A'ları, veritabanı nulllarının (bilinmeyen veya eksik bilgi için yer tutucular) eşdeğeridir.

Örnek geri bildirim sütunumuzun bir elektronik tabloda "Geri Bildirim" sütununda olduğunu varsayarsak, formül

=IF(ISNA(A2), "Bilinmeyen geri bildirim.", A2)

Patrona isnull ifadesine eşdeğerdir:

case(isnull([Geri Bildirim]), "Bilinmeyen geri bildirim.", [Geri Bildirim])

Python

Numpy ve pandas NaN veya NA kullanır, null yerine.

Örnek geri bildirim sütunumuzun df["Geri Bildirim"] adlı bir veri çerçevesi sütununda olduğunu varsayarsak:

df["Özel Sütun"] = np.where(df["Geri Bildirim"].isnull(), "Bilinmeyen geri bildirim.", df["Geri Bildirim"])

Patrona isnull ifadesine eşdeğerdir:

case(isnull([Geri Bildirim]), "Bilinmeyen geri bildirim.", [Geri Bildirim])

Daha fazla okuma