to_varchar
işlevi
Şunlar için geçerlidir: Databricks SQL Databricks Runtime 11.3 LTS ve üzeri
biçimlendirmesini fmt
kullanarak öğesine dönüştürmeyi STRING
döndürürexpr
.
Databricks Runtime 14.0 ve önceki to_varchar
sürümlerde sayısal türleri destekler expr
.
Databricks SQL ve Databricks Runtime 14.1 ve üzeri to_varchar
sürümleri de , TIMESTAMP
ve türlerini DATE
destekler expr
BINARY
to_varchar
to_char için bir eş anlamlıdır.
Söz dizimi
to_varchar(expr, { numericFormat | datetimeFormat | stringFormat } )
numericFormat
{ ' [ S ] [ L | $ ]
[ 0 | 9 | G | , ] [...]
[ . | D ]
[ 0 | 9 ] [...]
[ L | $ ] [ PR | MI | S ] ' }
Bağımsız değişkenler
expr
: Sayısal, tarih saat,STRING
veyaBINARY
türünde bir ifade.numericFormat
STRING
: Sayısal türü içinexpr
biçimlendirilmiş çıkışı belirten değişmez değer.datetimeFormat
STRING
: Tarih saat türü içinexpr
biçimlendirilmiş çıkışı belirten değişmez değer.stringFormat
STRING
: türüBINARY
içinexpr
biçimlendirilmiş çıkışı belirten değişmez değer.
Döndürülenler
STRING
Biçimlendirme işleminin sonucunu temsil eden bir.
datetmeFormat
Datetime desenlerinde belirtilen desenleri içerebilir.
stringFormat
aşağıdakilerden biri olabilir (büyük/küçük harfe duyarsız):
'base64'
Temel 64 dizesi.
'onaltılık'
Onaltılık biçimde bir dize.
'utf-8'
Giriş ikili dosyasının kodu UTF-8 dizesiyle çözüldü.
numericFormat
aşağıdaki öğeleri içerebilir (büyük/küçük harfe duyarsız):
0
veya9
0 ile 9 arasında beklenen bir basamak belirtir. Biçim dizesinde 0 ile 9 arasında değerler içeren basamak dizisi, giriş değerindeki bir basamak dizisiyle eşleşir. Bu, biçim dizesiyle karşılık gelen diziyle aynı uzunlukta bir sonuç dizesi oluşturur. 0/9 dizisi ondalık değerin eşleşen bölümünden daha fazla basamaktan oluşuyorsa, 0 ile başlıyorsa ve ondalık ayırıcıdan önceyse sonuç dizesi sıfırlarla sola doldurulur. Aksi takdirde boşluklarla doldurulur.
.
veyaD
Ondalık noktasının konumunu belirtir (isteğe bağlı, yalnızca bir kez izin verilir).
,
veyaG
Gruplandırma (binlik) ayırıcısının (,) konumunu belirtir. Her gruplandırma ayırıcısının solunda ve sağda 0 veya 9 olmalıdır.
$
$ para birimi işaretinin konumunu belirtir. Bu karakter yalnızca bir kez belirtilebilir.
S
veyaMI
'-' veya '+' işaretinin konumunu belirtir (isteğe bağlı, biçim dizesinin başında veya sonunda yalnızca bir kez izin verilir).
S
Pozitif değerler için yazdırılır+
ancakMI
bir boşluk yazdırılır.PR
Yalnızca biçim dizesinin sonunda izin verilir; , giriş değeri negatifse sonuç dizesinin açılı ayraçlar tarafından sarmalanacağını belirtir. ('<1>').
İzin numExpr
verilenden fmt
daha fazla basamak gerekiyorsa, işlevi ile 0
değerini döndürür fmt
ve 9
ile değiştirilir #
(örn'$###.##'
. ).
Hatalı biçimlendirilmişse fmt
Databricks SQL bir hata döndürür.
Bu işlev, to_varchar için bir diğer addır.
Örnekler
> SELECT to_varchar(454, '999');
454
> SELECT to_varchar(454, '000.00');
454.00
> SELECT to_varchar(12454, '99,999');
12,454
> SELECT to_varchar(78.12, '$99.99');
$78.12
> SELECT to_varchar(-12454.8, '99,999.9S');
12,454.8-
> SELECT to_varchar(12454.8, '99,999.9S');
12,454.8+
> SELECT '>' || to_varchar(123, '00000.00') || '<';
>00123.00<
> SELECT '>' || to_varchar(123, '99999.99') || '<';
> 123.00<
> SELECT to_varchar(1.1, '99');
##
> SELECT to_varchar(111.11, '99.9');
##.#
> SELECT to_varchar(111.11, '$99.9');
$##.#
> SELECT to_varchar(date'2016-04-08', 'y');
2016
> SELECT to_varchar(x'537061726b2053514c', 'base64');
U3BhcmsgU1FM
> SELECT to_varchar(x'537061726b2053514c', 'hex');
537061726B2053514C
> SELECT to_varchar(encode('abc', 'utf-8'), 'utf-8');
abc
> SELECT to_varchar(111, 'wrong');
Error: 'wrong' is a malformed format.