に最終更新
FLOOR
説明
浮動小数点数および固定小数点数を指定した桁数で切り下げ、切り下げ後の浮動小数点数または固定小数点数を返します。
構文
FLOOR(<a>[, <d>])
パラメータ
| パラメータ | 説明 |
|---|---|
<a> | 切り下げる値を指定する浮動小数点数(Double)または固定小数点数(Decimal) |
<d> | 省略可能な整数。切り下げる対象の桁数を指定します。正の数は次の小数位まで、負の数も次の小数位まで切り下げることを意味し、0 は整数に切り下げることを意味します。省略した場合は <d> = 0 と同じです。 |
戻り値
以下の規則に従い、<a> 以下となる最大の切り下げ後の値を返します。
1/(10^d) の位に切り下げます。つまり、結果が 1/(10^d) で割り切れるようにします。1/(10^d) を正確に表現できない場合、切り下げる桁には、対応するデータ型で最も近い数値を使用します。
<a> が Decimal 型の場合、型を Decimal(p, s) とすると、戻り値の型は次のとおりです。
Decimal(p, 0):<d> <= 0の場合Decimal(p, <d>):0 < <d> <= sの場合Decimal(p, s):<d> > sの場合
いずれかの入力パラメータが NULL の場合、NULL を返します。
別名
- DFLOOR
例
select floor(123.456);
+----------------+
| floor(123.456) |
+----------------+
| 123 |
+----------------+
select floor(123.456, 2);
+-------------------+
| floor(123.456, 2) |
+-------------------+
| 123.45 |
+-------------------+
select floor(123.456, -2);
+--------------------+
| floor(123.456, -2) |
+--------------------+
| 100 |
+--------------------+
select floor(123.45, 1), floor(123.45), floor(123.45, 0), floor(123.45, -1);
+------------------+---------------+------------------+-------------------+
| floor(123.45, 1) | floor(123.45) | floor(123.45, 0) | floor(123.45, -1) |
+------------------+---------------+------------------+-------------------+
| 123.4 | 123 | 123 | 120 |
+------------------+---------------+------------------+-------------------+
select floor(x, 2) from ( select cast(123.456 as decimal(6,3)) as x from numbers("number"="5") )t;
+-------------+
| floor(x, 2) |
+-------------+
| 123.45 |
| 123.45 |
| 123.45 |
| 123.45 |
| 123.45 |
+-------------+
select floor(NULL, 2);
+----------------+
| floor(NULL, 2) |
+----------------+
| NULL |
+----------------+