Funktionen ceiling
Gäller för: Databricks SQL Databricks Runtime 11.3 LTS och senare
Returnerar det minsta talet som inte är mindre än expr
avrundat uppåt till targetScale
siffror i förhållande till decimaltecknet. Den här funktionen är synonym med ceil-funktionen.
Syntax
ceiling(expr [, targetScale])
Argument
expr
: Ett uttryck som utvärderas till ett numeriskt uttryck.targetScale
: En valfri INTEGER-literal som är större än-38
att ange hur många siffror efter decimaltecknet som ska avrundas uppåt.
Returer
Om inget targetScale
anges:
- Om
expr
ärDECIMAL(p, s)
returnerar .DECIMAL(p - s + 1, 0)
- För alla andra fall returnerar en BIGINT.
Om targetScale
anges och expr
är en:
TINYINT
Returnerar ett
DECIMAL(p, 0)
medp = max(3, -targetScale + 1)
.SMALLINT
Returnerar ett
DECIMAL(p, 0)
medp = max(5, -targetScale + 1)
.INTEGER
Returnerar ett
DECIMAL(p, 0)
medp = max(10, -targetScale + 1))
.BIGINT
Returnerar ett
DECIMAL(p, 0)
medp = max(20, -targetScale + 1))
.FLOAT
Returnerar en
DECIMAL(p, s)
medp = max(14, -targetScale + 1))
ochs = min(7, max(0, targetScale))
DOUBLE
Returnerar en
DECIMAL(p, s)
medp = max(30, -targetScale + 1))
ochs = min(15, max(0, targetScale))
DECIMAL(p_in, s_in)
Returnerar en
DECIMAL(p, s)
medp = max(p_in - s_in + 1, -targetScale + 1))
ochs = min(s_in, max(0, targetScale))
Om targetScale
är negativt sker avrundningen till -targetScale
vänster om decimaltecknet.
Standardvärdet targetScale
är 0, vilket avrundar upp till nästa större integralnummer.
Exempel
> 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