# IsNull Funzione per script e grafici

La funzione IsNull verifica se il valore di un'espressione sia NULL restituendo -1 (True) in caso affermativo e 0 (False) in caso contrario.

Sintassi:

IsNull(expr )

Nota informaticaUna stringa con lunghezza zero non è considerata NULL e farà sì che IsNull restituisca False.

Tipo di dati restituiti: Boolean

Argomenti

| Argomento | Descrizione |
| --- | --- |
| expr | L'espressione o il campo contenente i dati da misurare. |

Esempio: espressione del grafico

| Esempio | Risultato |
| --- | --- |
| `IsNull(Productname)` | Restituisce `-1` (Vero) se `ProductName` è un valore null, altrimenti restituisce `0` (Falso). |

## Esempio: principi fondamentali della funzione IsNull

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

#### Espressione del grafico

Panoramica

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* Un set di dati che viene caricato in una tabella dati chiamata `Example`.

* I seguenti campi nella tabella dati:

  * `ID`

  * `Value`

Script di caricamento

```
Example:
LOAD * Inline
[ID, Value
0,
1,NULL
2,-
3,378];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:

* `ID`

* `Value`

Creare le seguenti dimensioni calcolate:

* `=If(len(trim(Value))= 0 or Value='NULL' or Value='-', Null(), Value )`, per restituire `NULL` se il campo `Value` non ha alcun valore, un carattere trattino (-) o il valore `NULL`, altrimenti restituisce il valore.

* `=If(IsNull(If(len(trim(Value))= 0 or Value='NULL' or Value='-', Null(), Value )), 'T', 'F')`, per restituire il valore `T` (Vero) o `F` (Falso) a seconda che il campo `Value` contenga o meno un valore null.

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 |

La colonna `Value` mostra i dati come sono stati inseriti nel set di dati. La prima misura (colonna 3) restituisce `NULL` per le prime 3 righe il cui valore ha soddisfatto le condizioni dell'istruzione `IF`: `len(trim(Value))= 0 or Value='NULL' or Value='-'`. L'ultima riga restituisce il valore inserito, `378`.

La seconda misura (colonna 4) prende il valore dell'espressione nella colonna 3 e restituisce `T` se `NULL` o `F` se non `NULL`. I risultati mostrano che le prime 3 righe sono valori null.

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

#### Script di caricamento

In questo esempio viene caricata una tabella inline con quattro righe, in cui le prime tre righe non contengono alcun valore oppure contengono - o NULL nella colonna `Value`. Questi valori verranno convertiti in rappresentazioni di valori NULL true con l'istruzione centrale preceding LOAD mediante la funzione Null.

La prima istruzione LOAD aggiunge un campo che consente di verificare se il valore è NULL mediante la funzione IsNull.

```
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];
```

Qui sotto è riportata la tabella risultante. Nella colonna `ValueNullConv` i valori `NULL` vengono rappresentati da `-`.

Results table

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

## Esempio: scenario per la funzione IsNull

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

#### Espressione del grafico

Panoramica

Un set di dati sui dati delle vendite viene analizzato per verificare quali campi hanno valori null.

Aprire l'Editor caricamento dati e aggiungere lo script di caricamento sotto in una nuova sezione.

Lo script di caricamento contiene:

* Un set di dati che viene caricato in una tabella dati chiamata `Example`.

* Una variabile `NULLINTERPRET` impostata su `NULL`.

* I seguenti campi nella tabella dati:

  * `SalesID`

  * `Name`

  * `Age`

  * `Email`

  * `Region`

  * `Status`

Script di caricamento

```
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
];
```

Risultati

Caricare i dati e aprire un foglio. Creare una nuova tabella e aggiungere tali campi come dimensioni:

* `SalesID`

* `Name`

Creare le seguenti dimensioni calcolate:

* `=If(IsNull(Age), 'Age unavailable', Age)`, per popolare il campo `Age` con il valore `Age unavailable` se è `NULL`.

* `=If(IsNull(Email), 'Email unavailable', Email)`, per popolare il campo `Email` con il valore `Email unavailable` se è `NULL`.

* `=If(IsNull(Region), 'Region unavailable', Region)`, per popolare il campo `Region` con il valore `Region unavailable` se è `NULL`.

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 |

I risultati della funzione `IsNull`, che verifica e restituisce vero (true) se vengono trovati valori null, indicano che diversi campi del set di dati contengono valori null. Ad esempio, è stato identificato un valore null nella colonna `Age` per `Charlie Lee`, ed è stato restituito l'output `Age unavailable`.