MYSQL中取整函式ROUND,FLOOR和CEILING的用法
一、ROUND()函式用法
ROUND(X) -- 表示將值 X 四捨五入為整數,無小數位
ROUND(X,D) -- 表示將值 X 四捨五入為小數點後 D 位的數值,D為小數點後小數位數。若要保留 X 值小數點左邊的 D 位,可將 D 設為負值。
該函式與FLOOR函式有所不同,在應用中需注意,另外,DECIMAL函式也有類似該函式四捨五入的功能。
1、ROUND示例:
SELECT ROUND('123.456')
-----------------------------
123
SELECT ROUND('123.654')
-----------------------------
124
SELECT ROUND('123.456',2)
-----------------------------
123.46
SELECT ROUND('123.654',2)
-----------------------------
123.65
2、DECIMAL示例:
SELECT CAST('123.456' AS DECIMAL)
----------------------------------
123
SELECT CAST('123.654' AS DECIMAL)
----------------------------------
124
SELECT CAST('123.456' AS DECIMAL(10,2))
-------------------------------------------
123.46
SELECT CAST('123.654' AS DECIMAL(10,2))
-------------------------------------------
123.65
二、FLOOR函式用法
FLOOR(X)表示向下取整,只返回值X的整數部分,小數部分捨棄。
FLOOR示例:
SELECT FLOOR('123.456')
-----------------------------
123
SELECT FLOOR('123.654')
-----------------------------
123
三、CEILING函式用法
CEILING(X) 表示向上取整,只返回值X的整數部分,小數部分捨棄。
CEILING示例:
SELECT CEILING('123.456')
-----------------------------
124
SELECT CEILING('123.654')
-----------------------------
124