Funkce ceiling
Platí pro: Databricks SQL Databricks Runtime 11.3 LTS a vyšší
Vrátí nejmenší číslo, které není menší než expr
zaokrouhleno nahoru na číslice vzhledem k targetScale
desetinné bodě. Tato funkce je synonymem funkce ceil.
Syntaxe
ceiling(expr [, targetScale])
Argumenty
expr
: Výraz, který se vyhodnotí jako číselný.targetScale
: Volitelný literál INTEGER větší než-38
určení, kolik číslic za desetinnou čárkou se zaokrouhlí nahoru.
Návraty
Pokud není uvedena žádná targetScale
hodnota:
- Pokud
expr
jeDECIMAL(p, s)
, vrátíDECIMAL(p - s + 1, 0)
. - Pro všechny ostatní případy vrátí funkci BIGINT.
Pokud targetScale
je zadán a expr
je:
TINYINT
Vrátí s
DECIMAL(p, 0)
.p = max(3, -targetScale + 1)
SMALLINT
Vrátí s
DECIMAL(p, 0)
.p = max(5, -targetScale + 1)
INTEGER
Vrátí s
DECIMAL(p, 0)
.p = max(10, -targetScale + 1))
BIGINT
Vrátí s
DECIMAL(p, 0)
.p = max(20, -targetScale + 1))
FLOAT
Vrátí s
DECIMAL(p, s)
p = max(14, -targetScale + 1))
s = min(7, max(0, targetScale))
DOUBLE
Vrátí s
DECIMAL(p, s)
p = max(30, -targetScale + 1))
s = min(15, max(0, targetScale))
DECIMAL(p_in, s_in)
Vrátí s
DECIMAL(p, s)
p = max(p_in - s_in + 1, -targetScale + 1))
s = min(s_in, max(0, targetScale))
Pokud targetScale
je záporné zaokrouhlení na -targetScale
číslice vlevo od desetinné čárky.
Výchozí hodnota targetScale
je 0, což zaokrouhlí nahoru na další větší celočíselné číslo.
Příklady
> SELECT ceiling(-0.1);
0
> SELECT ceiling(5);
5
> SELECT ceiling(5.4);
6
> SELECT ceiling(3345.1, -2);
3400
> SELECT ceiling(-12.345, 1);
-12.3