- Catégories :
TO_CHAR , TO_VARCHAR¶
Convertit l’expression d’entrée en chaîne. Pour une entrée NULL, la sortie est NULL.
Ces fonctions sont synonymes.
Syntaxe¶
TO_CHAR( <expr> )
TO_CHAR( <numeric_expr> [, '<format>' ] )
TO_CHAR( <date_or_time_expr> [, '<format>' ] )
TO_CHAR( <binary_expr> [, '<format>' ] )
TO_VARCHAR( <expr> )
TO_VARCHAR( <numeric_expr> [, '<format>' ] )
TO_VARCHAR( <date_or_time_expr> [, '<format>' ] )
TO_VARCHAR( <binary_expr> [, '<format>' ] )
Arguments¶
Obligatoire :
expr
Une expression de tout type de données.
expr_numérique
Une expression numérique
expr_date_ou_heure
Une expression de type DATE, TIME ou TIMESTAMP.
expr_binaire
Une expression de type BINARY ou VARBINARY.
Facultatif :
format
Le format de la chaîne de sortie :
Pour
expr_numérique
, spécifie le modèle de format SQL utilisé pour interpréter l’expression numérique. Pour plus d’informations, voir Modèles de format SQL.Pour
expr_date_ou_heure
, spécifie le format attendu pour l’analyse ou la production d’une chaîne. Pour plus d’informations, voir Formats de date et heure dans les fonctions de conversion.La valeur par défaut est la valeur actuelle des paramètres de session suivants :
DATE_OUTPUT_FORMAT (pour les entrées DATE)
TIME_OUTPUT_FORMAT (pour les entrées TIME)
TIMESTAMP_OUTPUT_FORMAT (pour les entrées TIMESTAMP)
Pour
expr_binaire
, spécifie le format dans lequel produire la chaîne, (par exemple “HEX”, “BASE64” ou “UTF-8”).Pour plus d’informations, voir Présentation des formats binaires pris en charge.
Notes sur l’utilisation¶
Pour les entrées VARIANT, ARRAY ou OBJECT, la sortie est la chaîne contenant un document JSON ou une valeur élémentaire JSON (à moins que VARIANT ou OBJECT contienne une balise XML, auquel cas le résultat est une chaîne contenant un document XML) :
Une chaîne stockée dans VARIANT est conservée telle quelle (c’est-à-dire qu’elle n’est pas convertie en une chaîne JSON).
Une valeur JSON null est convertie en une chaîne contenant le mot « null ».
Exemples¶
select to_varchar('2013-04-05 01:02:03'::timestamp, 'mm/dd/yyyy, hh24:mi hours');
+---------------------------------------------------------------------------+
| TO_VARCHAR('2013-04-05 01:02:03'::TIMESTAMP, 'MM/DD/YYYY, HH24:MI HOURS') |
|---------------------------------------------------------------------------|
| 04/05/2013, 01:02 hours |
+---------------------------------------------------------------------------+
select to_varchar('03-May-2013'::date);
+---------------------------------+
| TO_VARCHAR('03-MAY-2013'::DATE) |
|---------------------------------|
| 2013-05-03 |
+---------------------------------+
select to_varchar('03-May-2013'::date, 'yyyy.mm.dd');
+-----------------------------------------------+
| TO_VARCHAR('03-MAY-2013'::DATE, 'YYYY.MM.DD') |
|-----------------------------------------------|
| 2013.05.03 |
+-----------------------------------------------+
select to_varchar(log(3,4));
+----------------------+
| TO_VARCHAR(LOG(3,4)) |
|----------------------|
| 1.261859507 |
+----------------------+
select column1 as orig_value,
to_char(column1, '">"$99.0"<"') as D2_1,
to_char(column1, '">"B9,999.0"<"') as D4_1,
to_char(column1, '">"TME"<"') as TME,
to_char(column1, '">"TM9"<"') as TM9,
to_char(column1, '">"0XXX"<"') as X4,
to_char(column1, '">"S0XXX"<"') as SX4
from values (-12.391), (0), (-1), (0.10), (0.01), (3987), (1.111);
+------------+----------+------------+-------------+------------+--------+---------+
| ORIG_VALUE | D2_1 | D4_1 | TME | TM9 | X4 | SX4 |
|------------+----------+------------+-------------+------------+--------+---------|
| -12.391 | >-$12.4< | > -12.4< | >-1.2391E1< | >-12.391< | >FFF4< | >-000C< |
| 0.000 | > $0.0< | > .0< | >0E0< | >0.000< | >0000< | >+0000< |
| -1.000 | > -$1.0< | > -1.0< | >-1E0< | >-1.000< | >FFFF< | >-0001< |
| 0.100 | > $0.1< | > .1< | >1E-1< | >0.100< | >0000< | >+0000< |
| 0.010 | > $0.0< | > .0< | >1E-2< | >0.010< | >0000< | >+0000< |
| 3987.000 | > $##.#< | > 3,987.0< | >3.987E3< | >3987.000< | >0F93< | >+0F93< |
| 1.111 | > $1.1< | > 1.1< | >1.111E0< | >1.111< | >0001< | >+0001< |
+------------+----------+------------+-------------+------------+--------+---------+