Funkcja floor
Dotyczy: Databricks SQL Databricks Runtime 10.4 LTS i nowsze
Zwraca największą liczbę nie większą niż expr
zaokrąglona w dół do targetScale
cyfr względem punktu dziesiętnego.
Składnia
floor(expr [, targetScale])
Argumenty
expr
: wyrażenie, które daje w wyniku wartość liczbową.targetScale
: Opcjonalny literał INTEGER większy niż-38
określa liczbę cyfr po przecinku do zaokrąglenia w dół.
Zwraca
Jeśli nie targetScale
podano:
- Jeśli
expr
parametr maDECIMAL(p, s)
wartość , zwraca wartośćDECIMAL(p - s + 1, 0)
. - W przypadku wszystkich innych przypadków zwraca wartość BIGINT.
Jeśli targetScale
jest określony i expr
jest:
TINYINT
Zwraca obiekt
DECIMAL(p, 0)
z wartościąp = max(3, -targetScale + 1)
.SMALLINT
Zwraca obiekt
DECIMAL(p, 0)
z wartościąp = max(5, -targetScale + 1)
.INTEGER
Zwraca obiekt
DECIMAL(p, 0)
z wartościąp = max(10, -targetScale + 1))
.BIGINT
Zwraca obiekt
DECIMAL(p, 0)
z wartościąp = max(20, -targetScale + 1))
.FLOAT
Zwraca element
DECIMAL(p, s)
z elementamip = max(14, -targetScale + 1))
is = min(7, max(0, targetScale))
DOUBLE
Zwraca element
DECIMAL(p, s)
z elementamip = max(30, -targetScale + 1))
is = min(15, max(0, targetScale))
DECIMAL(p_in, s_in)
Zwraca element
DECIMAL(p, s)
z elementamip = max(p_in - s_in + 1, -targetScale + 1))
is = min(s_in, max(0, targetScale))
Jeśli targetScale
jest ujemne, zaokrąglanie następuje do -targetScale
cyfr po lewej stronie przecinka dziesiętnego.
Wartość domyślna targetScale
to 0, która zaokrągla w dół do następnej mniejszej liczby całkowitej.
Przykłady
> SELECT floor(-0.1);
-1
> SELECT floor(5);
5
> SELECT floor(3345.1, -2);
3300
> SELECT floor(-12.345, 1);
-12.4