FirebirdSQL logo

DECODE()

Disponible en

DSQL, PSQL

Syntaxe
DECODE(<testexpr>,
  <expr1>, <result1>
  [<expr2>, <result2> …]
  [, <defaultresult>])

construction équivalente CASE

CASE <testexpr>
  WHEN <expr1> THEN <result1>
  [WHEN <expr2> THEN <result2> …]
  [ELSE <defaultresult>]
END
Table 1. paramètres de fonction DECODE
Paramètre Description

testexpr

Expressions de tout type compatible qui sont comparées à des expressions <expr1>, <expr2> …​ <exprN>

expr1, expr2, …​ exprN

Expressions de tout type compatible par rapport à l’expression <testexpr>.

result1, result2, …​ resultN

Retourne des expressions de n’importe quel type.

defaultresult

Une expression renvoyée si aucune des conditions n’a été remplie.

type de résultat de retour

dépend des types d’arguments d’entrée

Cette fonction est équivalente à la construction Simple CASE, dans laquelle une expression donnée est comparée à d’autres expressions avant qu’une correspondance soit trouvée.Le résultat est la valeur donnée après l’expression avec laquelle la correspondance est trouvée.Si aucune correspondance n’est trouvée, la valeur par défaut est retournée (si elle est, bien sûr, donnée — sinon NULL est retourné).

Caution

Une correspondance est équivalente à l’opérateur ‘=’, c’est-à-dire que si testexpr est défini à NULL alors il ne correspond à aucune des expr, même celles qui sont définies à NULL.

Exemple DECODE

Example 1. Utilisation de la fonction DECODE
select name,
  age,
  decode(upper(sex),
         'M', 'Male',
         'F', 'Female',
         'Unknown'),
  religion
from people
Voir aussi :

CASE.