Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A
A következőkre vonatkozik: Databricks SQL
Databricks Runtime 11.3 LTS és újabb
A expr
használatával formázott STRING
típussá alakított fmt
értéket ad vissza.
A Databricks Runtime 14.0 és korábbi verziókban a numerikus típusok to_char
támogatását expr
támogatja.
A Databricks SQL-ben és a Databricks Runtime 14.1 és újabb verzióiban a to_char
is támogatja a expr
típusok DATE
, TIMESTAMP
, és BINARY
formátumát.
to_char
a szinonimája a to_varchar-nak.
Szintaxis
to_char(expr, { numericFormat | datetimeFormat | stringFormat } )
numericFormat
{ ' [ S ] [ L | $ ]
[ 0 | 9 | G | , ] [...]
[ . | D ]
[ 0 | 9 ] [...]
[ L | $ ] [ PR | MI | S ] ' }
Argumentumok
-
expr
: Numerikus, idő- vagy dátumtípusúSTRING
, vagyBINARY
. -
numericFormat
: EgySTRING
literál, amely meghatározza aexpr
numerikus típushoz tartozó formázott adatot. -
datetimeFormat
: EgySTRING
literál, amely megadja aexpr
formázott kimenetét datetime típus esetén. -
stringFormat
: EgySTRING
literál, amely aexpr
típusúBINARY
formázott kimenetét adja meg.
Visszaküldések
A STRING
formázási művelet eredményét jelképező érték.
datetmeFormat
a Datetime-mintákban megadott mintákat tartalmazhat.
stringFormat
a következők egyike lehet (nem érzékeny a kis- és nagybetűkre):
"base64"
Egy Base64 karakterlánc.
"hexa"
Hexadecimális formátumú karakterlánc.
"utf-8"
A bemeneti bináris kód UTF-8 sztringre van dekódolva.
numericFormat
a következő elemeket tartalmazhatja (kis- és nagybetű érzékenység nélkül):
0
vagy9
0 és 9 közötti várható számjegyet ad meg. A formátumsztringben 0 és 9 közötti értékeket tartalmazó számjegyek sorozata megegyezik a bemeneti érték számjegyeinek sorozatával. Ez a formátumsztringgel megegyező hosszúságú eredménysztringet hoz létre. Az eredménykarakterlánc balról nullákkal van feltöltve, ha a 0/9 sorozat több számjegyből áll, mint a tizedes érték egyező része, 0-val kezdődik, és a tizedesvessző előtt van. Ellenkező esetben szóközökkel van kitöltve.
.
vagyD
A tizedesvessző pozícióját adja meg (nem kötelező, csak egyszer engedélyezett).
,
vagyG
A csoportosítási (ezres) elválasztó (,) pozícióját adja meg. Az egyes csoportosítási elválasztóktól balra és jobbra 0 vagy 9 karakternek kell lennie.
$
A $ pénznemjel helyét adja meg. Ez a karakter csak egyszer adható meg.
S
vagyMI
Egy "-" vagy "+" jel pozícióját adja meg (nem kötelező, csak egyszer engedélyezett a formátumsztring elején vagy végén). Vegye figyelembe, hogy
S
pozitív értékek esetén a+
-et nyomtatja ki, de aMI
egy üres karaktert nyomtat.PR
Csak a formátumsztring végén engedélyezett; azt adja meg, hogy az eredménysztring szögletes zárójelekkel lesz burkolva, ha a bemeneti érték negatív. ('<1>').
Ha az egész vagy a tizedes részben numExpr
több számjegyre van szükség, mint amennyit a megfelelő rész fmt
megenged, akkor a függvény visszaadja mindkét részt a fmt
-ben, ahol 0
és 9
helyébe #
lép (pl. '$###.##'
).
Ha fmt
hibás a Databricks SQL, hibát ad vissza.
Ez a függvény a to_varchar aliasa.
Példák
> SELECT to_char(454, '999');
454
> SELECT to_char(454, '000.00');
1.00
> SELECT to_char(12454, '99,999');
12,454
> SELECT to_char(78.12, '$99.99');
$78.12
> SELECT to_char(-12454.8, '99,999.9S');
12,454.8-
> SELECT to_char(12454.8, '99,999.9S');
12,454.8+
> SELECT '>' || to_char(123, '00000.00') || '<';
>00123.00<
> SELECT '>' || to_char(123, '99999.99') || '<';
> 123.00<
> SELECT to_char(1.1, '99');
##
> SELECT to_char(111.11, '99.9');
##.#
> SELECT to_char(111.11, '$99.9');
$##.#
> SELECT to_char(date'2016-04-08', 'y');
2016
> SELECT to_char(x'537061726b2053514c', 'base64');
U3BhcmsgU1FM
> SELECT to_char(x'537061726b2053514c', 'hex');
537061726B2053514C
> SELECT to_char(encode('abc', 'utf-8'), 'utf-8');
abc
> SELECT to_char(111, 'wrong');
Error: 'wrong' is a malformed format.