A to_char függvény

A következőkre vonatkozik:jelölje be az igennel jelölt jelölőnégyzetet Databricks SQL jelölje be az igennel jelölt jelölőnégyzetet Databricks Runtime 11.3 LTS és újabb

expr A formázást fmthasználó öntött STRING értéket adja vissza.

A Databricks Runtime 14.0-s és korábbi to_char verzióiban a numerikus típusok támogatottak expr .

A Databricks SQL-ben és a Databricks Runtime 14.1-ben és újabb to_char verzióiban is támogatottak expr a típusok DATE, TIMESTAMPés BINARY

to_chara to_varchar szinonimája.

Syntax

to_char(expr, { numericFormat | datetimeFormat | stringFormat } )

numericFormat
  { ' [ S ] [ L | $ ]
      [ 0 | 9 | G | , ] [...]
      [ . | D ]
      [ 0 | 9 ] [...]
      [ L | $ ] [ PR | MI | S ] ' }

Argumentumok

  • expr: Numerikus, datetime STRINGvagy BINARY.
  • numericFormat: Egy STRING literál, amely megadja a numerikus típus formázott kimenetét expr .
  • datetimeFormat: Egy STRING konstans, amely megadja a dátum/idő típusú formázott kimenetet expr .
  • stringFormat: Egy STRING literál, amely a típus BINARYformázott kimenetét expr adja meg.

Válaszok

A STRING formázási művelet eredményét jelképező érték.

datetmeFormata Datetime-mintákban megadott mintákat tartalmazhat.

stringFormat a következők egyike lehet (a kis- és nagybetűk nem érzékenek):

  • "base64"

    Egy 64-es alapsztring.

  • "hexa"

    Hexadecimális formátumú sztring.

  • "utf-8"

    A bemeneti bináris kód UTF-8 sztringre van dekódolva.

numericFormat a következő elemeket tartalmazhatja (a kis- és nagybetűk nem érzékenek):

  • 0 vagy 9

    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. Ha a 0/9 sorozat több számjegyből áll, mint a decimális érték egyező része, 0-val kezdődik, és a tizedesvessző előtt van. Ellenkező esetben szóközökkel van párnázva.

  • . vagy D

    A tizedesvessző pozícióját adja meg (nem kötelező, csak egyszer engedélyezett).

  • , vagy G

    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 vagy MI

    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ékeket nyomtat + , de MI szóközt 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 integrál vagy a tizedes törtrészben numExpr több számjegyre van szükség, mint a megfelelő rész fmt, akkor a függvény a benne lévő fmt09 és a helyébe lépő # részeket is visszaadja (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');
 454.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.