- 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.
numeric_expr
Une expression numérique
date_or_time_expr
Une expression de type DATE, TIME ou TIMESTAMP.
binary_expr
Une expression de type BINARY ou VARBINARY.
Facultatif :
format
Le format de la chaîne de sortie :
Pour
numeric_expr
, 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
date_or_time_expr
, 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
binary_expr
, spécifie le format dans lequel produire la chaîne, (par exemple “HEX”, “BASE64” ou “UTF-8”).Pour plus d’informations, voir Overview of Supported Binary Formats.
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< |
+------------+----------+------------+-------------+------------+--------+---------+