IsNull - Skript- und Diagrammfunktion
Die Funktion IsNull überprüft, ob der Wert einer Formel NULL ist. Falls ja, wird -1 (True) ausgegeben, ansonsten 0 (False).
Syntax:
IsNull(expr )
Rückgabe Datentyp: Boolesch
Argument | Beschreibung |
---|---|
expr | Die Formel oder das Feld mit den Daten, die gemessen werden sollen. |
Beispiel | Ergebnis |
---|---|
IsNull(Productname) |
Gibt -1 (wahr) zurück, wenn ProductName ein Nullwert ist, andernfalls 0 (falsch). |
Beispiel – Grundlegendes zu „IsNull“
Übersicht
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
-
Datensatz, der in eine Datentabelle namens Example geladen wird
-
Die folgenden Felder in der Datentabelle:
-
ID
-
Value
-
Ladeskript
Example:
LOAD * Inline
[ID, Value
0,
1,NULL
2,-
3,378];
Ergebnisse
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:
-
ID
-
Value
Erstellen Sie die folgenden dynamischen Dimensionen:
-
=If(len(trim(Value))= 0 or Value='NULL' or Value='-', Null(), Value ), um NULL zurückzugeben, wenn das Feld Value keinen Wert, einen Bindestrich (-) oder den Wert NULL hat; andernfalls wird der Wert zurückgegeben.
-
=If(IsNull(If(len(trim(Value))= 0 or Value='NULL' or Value='-', Null(), Value )), 'T', 'F'), um den Wert T (wahr) oder F (falsch) zurückzugeben, je nachdem, ob das Feld Value einen Nullwert enthält oder nicht.
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 |
Die Spalte Value zeigt die Daten, wie sie in den Datensatz eingegeben wurden. Die erste Kennzahl (Spalte 3) gibt NULL für die ersten 3 Zeilen zurück, deren Wert die Bedingungen der Anweisung IF erfüllt: len(trim(Value))= 0 or Value='NULL' or Value='-'. Die letzte Zeile gibt den eingegebenen Wert zurück, 378.
Die zweite Kennzahl (Spalte 4) nimmt den Wert der Formel in Spalte 3 und gibt T zurück, wenn NULL oder F, wenn nicht NULL. Die Ergebnisse zeigen, dass die ersten 3 Zeilen Nullwerte sind.
In diesem Beispiel wird eine Inline-Tabelle mit vier Zeilen geladen, in denen die ersten drei Zeilen entweder nichts, einen Bindestrich - oder den Text NULL in der Spalte Value enthalten. Wir wandeln diese Werte in echte NULL-Wertrepräsentationen um, wobei der mittlere vorhergehende LOAD-Vorgang die Null-Funktion verwendet.
Der erste vorangehende LOAD-Befehl fügt ein Feld hinzu, das überprüft, ob der Wert NULL ist. Dazu wird die IsNull-Funktion verwendet.
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];
Daraus ergibt sich die folgende Tabelle. In der Spalte ValueNullConv werden die NULL-Werte durch - repräsentiert.
ID | Value | ValueNullConv |
IsItNull |
---|---|---|---|
0 | - | T | |
1 | NULL | - | T |
2 | - | - | T |
3 | 378 | 378 | F |
Beispiel – Szenario für „IsNull“
Übersicht
Ein Datensatz mit Umsatzdaten wird analysiert, um zu sehen, welche Felder Nullwerte haben.
Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in eine neue Registerkarte ein.
Das Ladeskript umfasst:
-
Datensatz, der in eine Datentabelle namens Example geladen wird
-
Eine Variable NULLINTERPRET, die auf NULL festgelegt ist.
-
Die folgenden Felder in der Datentabelle:
-
SalesID
-
Name
-
Age
-
Email
-
Region
-
Status
-
Ladeskript
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
];
Ergebnisse
Laden Sie die Daten und öffnen Sie ein Arbeitsblatt. Erstellen Sie eine neue Tabelle und fügen Sie die folgenden Felder als Dimensionen hinzu:
-
SalesID
-
Name
Erstellen Sie die folgenden dynamischen Dimensionen:
-
=If(IsNull(Age), 'Age unavailable', Age), um das Feld Age mit dem Wert Age unavailable zu füllen, wenn es NULL ist.
-
=If(IsNull(Email), 'Email unavailable', Email), um das Feld Email mit dem Wert Email unavailable zu füllen, wenn es NULL ist.
-
=If(IsNull(Region), 'Region unavailable', Region), um das Feld Region mit dem Wert Region unavailable zu füllen, wenn es NULL ist.
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 |
Die Ergebnisse der Funktion IsNull, die nach Nullwerten sucht und „wahr“ zurückgibt, wenn diese gefunden werden, zeigen, dass mehrere Felder im Datensatz Nullwerte enthalten. Zum Beispiel wurde in der Spalte Age für Charlie Lee ein Nullwert identifiziert und die Ausgabe Age unavailable wurde zurückgegeben.