# NULLFonction de script et de graphique

La fonction Null renvoie une valeur null.

Syntaxe :

Null( )

Type de données renvoyé : NULL

Exemple : Expressions de graphique

| Exemple | Résultat |
| --- | --- |
| `If(Product = 'A', Null(),Sum(Sales))` | Cette expression renvoie `NULL` pour `Product A`, sinon elle renvoie la somme des ventes du produit. |

## Exemple - Les bases de Null

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

#### Expression de graphique

Vue d'ensemble

Un simple jeu de données est utilisé pour démontrer les différentes utilisations de la fonction `Null`.

Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à une nouvelle section.

Le script de chargement contient :

* Jeu de données chargé dans une table de données appelée `Example`.

* Champs suivants dans la table de données :

  * `ID`

  * `Value`

Script de chargement

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

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ces champs comme dimensions :

* `ID`

* `Value`

Créez les dimensions calculées suivantes :

* `=If(len(trim(Value))= 0 or Value='NULL' or Value='-', Null(), Value )`, pour renvoyer `NULL` si le champ `Value` a l'une des valeurs suivantes : aucune valeur, un caractère de tiret (-) ou la valeur `NULL` ; sinon, renvoie la valeur.

* `=If(IsNull(If(len(trim(Value))= 0 or Value='NULL' or Value='-', Null(), Value )), 'T', 'F')`, pour renvoyer la valeur `T` (vrai) ou `F` (faux) selon que le champ `Value` contient ou non une valeur nulle.

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 colonne `Value` présente les données telles qu'elles ont été saisies dans le jeu de données. La première mesure (colonne 3) utilise la fonction `Null` pour renvoyer `NULL` pour les valeurs qui remplissent les conditions de l'instruction `IF` : `len(trim(Value))= 0 or Value='NULL' or Value='-'`. Par exemple, les 3 premières lignes remplissent les conditions et renvoient `NULL`. La dernière ligne renvoie la valeur telle qu'elle a été saisie, `378`.

La deuxième mesure (colonne 4) prend la valeur de la colonne 3 et renvoie `T` si la valeur est `NULL` ou `F` si elle n'est pas `NULL`. Les résultats montrent que les 3 premières lignes sont des valeurs nulles.

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

#### Script de chargement

Dans cet exemple, une table inline comportant quatre lignes est chargée, avec les trois premières lignes ne contenant rien, un tiret - ou le texte NULL dans la colonne `Value`. Nous convertissons ces valeurs en représentations de valeurs NULL vraies.

L'instruction LOAD antérieure du milieu procède à la conversion en utilisant la fonction `Null`.

La première instruction preceding LOAD ajoute un champ qui vérifie si la valeur correspond à NULL, à simple titre d'illustration dans cet exemple.

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

Voici la table résultante. Dans la colonne `ValueNullConv`, les valeurs `NULL` sont représentées par `-`.

Results table

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

## Exemple - Exclusion de valeurs à l'aide de Null

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

#### Expression de graphique

Vue d'ensemble

Les données des ventes sont analysées afin de déterminer le total des ventes et les ventes qui ne sont pas liées au `Product A`.

Ouvrez l'éditeur de chargement de données et ajoutez le script de chargement ci-dessous à une nouvelle section.

Le script de chargement contient :

* Jeu de données chargé dans une table de données appelée `Example`.

* Champs suivants dans la table de données :

  * `Product`

  * `Sales`

Script de chargement

```
Example:
LOAD * Inline [
Product, Sales
A, 100
B, 150
C, 200
D, 250
];
```

Résultats

Chargez les données et ouvrez une feuille. Créez une table et ajoutez ce champ comme dimension :

* `Product`

Créez les mesures suivantes :

* `=Sum(Sales)`, pour calculer le total des ventes.

* `=If(Product = 'A', Null(),Sum(Sales))`, pour calculer le total des ventes lorsque le produit `Product` n'est pas `A`.

Results table

| Product | Sum(Sales) | If(Product = 'A', Null(),Sum(Sales)) |
| --- | --- | --- |
| A | 100 | - |
| B | 150 | 150 |
| C | 200 | 200 |
| D | 250 | 250 |

Cet exemple montre une manière simple de calculer le total des ventes, puis d'exclure les ventes d'un produit spécifique en utilisant la fonction `Null` pour définir la valeur sur `NULL`. Par exemple, dans la deuxième mesure, toutes les valeurs de `Product A` ont renvoyé `NULL` et ont été exclues.