# 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 )

InformationshinweisEin String mit der Länge Null wird nicht als NULL betrachtet und IsNull wird als False ausgegeben.

Rückgabe Datentyp: Boolesch

Argumente

| Argument | Beschreibung |
| --- | --- |
| expr | Die Formel oder das Feld mit den Daten, die gemessen werden sollen. |

Beispiel: Diagrammformel

| Beispiel | Ergebnis |
| --- | --- |
| `IsNull(Productname)` | Gibt `-1` (wahr) zurück, wenn `ProductName` ein Nullwert ist, andernfalls `0` (falsch). |

## Beispiel – Grundlegendes zu „IsNull“

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/NULLFunctions/IsNull.htm)

#### Diagrammformel

Übersicht

Öffnen Sie den Dateneditor und fügen Sie das Ladeskript unten in einen neuen Abschnitt 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.

Results table

| 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.

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/NULLFunctions/IsNull.htm)

#### Ladeskript

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.

Results table

| ID | Value | ValueNullConv | IsItNull |
| --- | --- | --- | --- |
| 0 |  | - | T |
| 1 | NULL | - | T |
| 2 | - | - | T |
| 3 | 378 | 378 | F |

## Beispiel – Szenario für „IsNull“

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/NULLFunctions/IsNull.htm)

#### Diagrammformel

Ü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 einen neuen Abschnitt 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.

Results table

| 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.