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
Átkonvertálás num innen: fromBasetoBase.
Szemantika
conv(num, fromBase, toBase)
Argumentumok
-
num: SzámokatSTRINGkifejező kifejezés a következőbenfromBase: . -
fromBase: AINTEGERforrásbázist jelző kifejezés. -
toBase: AINTEGERcélbázist jelző kifejezés.
Válaszok
Egy STRING.
A függvény támogatja a 2. bázist a 36-os alaphoz.
Az "A" (vagy "a") számjegy a decimális 10, a "Z" (vagy "z") pedig a tizedes 35-öt jelöli.
A támogatott értékek tartománya az BIGINTtartományát fedi le.
Ha fromBase kisebb, mint 2, vagy toBase -1, 0 vagy 1, akkor az eredmény .NULL
Ha toBase negatív, num akkor a rendszer aláírt számként értelmezi, ellenkező esetben nem aláírt számként kezeli.
Ha num a Databricks SQL és a Databricks Runtime 13.3 LTS tartományon kívül van, akkor a fenti ARITHMETIC_OVERFLOW.
Figyelmeztetés
A Databricks futtatókörnyezetben, ha spark.sql.ansi.enabled van false, a túlcsordulás nem okoz hibát, hanem "körbefuttatja" az eredményt.
Gyakori hibafeltételek
Példák
> SELECT conv('100', 2, 10);
4
> SELECT conv('-10', 16, 10);
18446744073709551600
> SELECT conv('-10', 16, -10);
-16
> SELECT conv('-1', 10, 10);
18446744073709551615
> SELECT conv('FFFFFFFFFFFFFFFFF', 16, 10);
Error: ARITHMETIC_OVERFLOW
> SELECT conv('FFFFFFFFFFFFFFFF', 16, 10);
18446744073709551615
> SELECT conv('FFFFFFFFFFFFFFFF', 16, -10);
-1