

Pour des fonctionnalités similaires à celles d'Amazon Timestream pour, pensez à Amazon Timestream LiveAnalytics pour InfluxDB. Il permet une ingestion simplifiée des données et des temps de réponse aux requêtes à un chiffre en millisecondes pour des analyses en temps réel. Pour en savoir plus, [cliquez ici](https://docs.aws.amazon.com//timestream/latest/developerguide/timestream-for-influxdb.html).

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Expressions conditionnelles
<a name="conditional-expressions"></a>

Timestream for LiveAnalytics prend en charge les expressions conditionnelles suivantes.

**Topics**
+ [La déclaration CASE](conditional-expressions.CASE.md)
+ [La déclaration IF](conditional-expressions.IF.md)
+ [La déclaration COALESCE](conditional-expressions.COALESCE.md)
+ [La déclaration NULLIF](conditional-expressions.NULLIF.md)
+ [La déclaration TRY](conditional-expressions.TRY.md)

# La déclaration CASE
<a name="conditional-expressions.CASE"></a>

L'instruction **CASE** recherche chaque expression de valeur de gauche à droite jusqu'à ce qu'elle en trouve une égale`expression`. S'il trouve une correspondance, le résultat correspondant à la valeur correspondante est renvoyé. Si aucune correspondance n'est trouvée, le résultat de la `ELSE` clause est renvoyé s'il existe ; dans le cas contraire, il `null` est renvoyé. La syntaxe est la suivante :

```
CASE expression
    WHEN value THEN result
    [ WHEN ... ]
    [ ELSE result ]
END
```

 Timestream prend également en charge la syntaxe suivante pour les instructions **CASE**. Dans cette syntaxe, le formulaire « recherché » évalue chaque condition booléenne de gauche à droite jusqu'à ce qu'une condition le soit `true` et renvoie le résultat correspondant. Si aucune condition ne l'est`true`, le résultat de la `ELSE` clause est renvoyé s'il existe ; dans le cas contraire, il `null` est renvoyé. Voir ci-dessous pour la syntaxe alternative : 

```
CASE
    WHEN condition THEN result
    [ WHEN ... ]
    [ ELSE result ]
END
```

# La déclaration IF
<a name="conditional-expressions.IF"></a>

L'instruction **IF** évalue une condition comme vraie ou fausse et renvoie la valeur appropriée. **Timestream prend en charge les deux représentations syntaxiques suivantes pour IF :**

```
if(condition, true_value)
```

Cette syntaxe évalue et renvoie `true_value` si la condition est `true` ; dans le cas contraire, elle `null` est renvoyée et n'`true_value`est pas évaluée.

```
if(condition, true_value, false_value)
```

Cette syntaxe évalue et renvoie `true_value` si la condition est`true`, sinon évalue et renvoie. `false_value`

## Exemples
<a name="conditional-expressions.IF.examples"></a>

```
SELECT
  if(true, 'example 1'),
  if(false, 'example 2'),
  if(true, 'example 3 true', 'example 3 false'),
  if(false, 'example 4 true', 'example 4 false')
```


| \$1col0 | \$1col1 | \$1col2 | \$1col3 | 
| --- | --- | --- | --- | 
|  `example 1`  |  `-` `null`  |  `example 3 true`  |  `example 4 false`  | 

# La déclaration COALESCE
<a name="conditional-expressions.COALESCE"></a>

 **COALESCE** renvoie la première valeur non nulle d'une liste d'arguments. La syntaxe est la suivante :

```
coalesce(value1, value2[,...])
```

# La déclaration NULLIF
<a name="conditional-expressions.NULLIF"></a>

L'instruction **IF** évalue une condition comme vraie ou fausse et renvoie la valeur appropriée. **Timestream prend en charge les deux représentations syntaxiques suivantes pour IF :**

**NULLIF** renvoie null s'il `value1` est égal `value2` ; dans le cas contraire, il renvoie la valeur. `value1` La syntaxe est la suivante :

```
nullif(value1, value2)
```

# La déclaration TRY
<a name="conditional-expressions.TRY"></a>

La fonction **TRY** évalue une expression et gère certains types d'erreurs en la `null` renvoyant. La syntaxe est la suivante :

```
try(expression)
```