floor
işlevi
Şunlar için geçerlidir: Databricks SQL Databricks Runtime 10.4 LTS ve üzeri
Ondalık ayırıcıya göre basamaklara targetScale
yuvarlanmış olandan expr
büyük olmayan en büyük sayıyı döndürür.
Söz dizimi
floor(expr [, targetScale])
Bağımsız değişkenler
expr
: Sayısal olarak değerlendirilen ifade.targetScale
: Ondalık ayırıcıdan sonra aşağı yuvarlanacak basamak sayısıyla belirtilenden-38
daha büyük isteğe bağlı TAMSAYı değişmez değeri.
Döndürülenler
Hayır targetScale
ise:
- ise
expr
DECIMAL(p, s)
, döndürürDECIMAL(p - s + 1, 0)
. - Diğer tüm durumlarda bir BIGINT döndürür.
Belirtilirse targetScale
ve expr
bir ise:
TINYINT
ile bir
DECIMAL(p, 0)
p = max(3, -targetScale + 1)
döndürür.SMALLINT
ile bir
DECIMAL(p, 0)
p = max(5, -targetScale + 1)
döndürür.INTEGER
ile bir
DECIMAL(p, 0)
p = max(10, -targetScale + 1))
döndürür.BIGINT
ile bir
DECIMAL(p, 0)
p = max(20, -targetScale + 1))
döndürür.FLOAT
ve ile değerini
DECIMAL(p, s)
p = max(14, -targetScale + 1))
döndürürs = min(7, max(0, targetScale))
DOUBLE
ve ile değerini
DECIMAL(p, s)
p = max(30, -targetScale + 1))
döndürürs = min(15, max(0, targetScale))
DECIMAL(p_in, s_in)
ve ile değerini
DECIMAL(p, s)
p = max(p_in - s_in + 1, -targetScale + 1))
döndürürs = min(s_in, max(0, targetScale))
Negatifse targetScale
, yuvarlama ondalık noktasının solundaki basamaklara -targetScale
gerçekleşir.
Varsayılan targetScale
değer 0'dır ve sonraki küçük tam sayıya yuvarlanır.
Örnekler
> SELECT floor(-0.1);
-1
> SELECT floor(5);
5
> SELECT floor(3345.1, -2);
3300
> SELECT floor(-12.345, 1);
-12.4