MySQL で四捨五入・切り捨て・切り上げする
ここでは、MySQL で四捨五入・切り捨て・切り上げする方法をご説明します。
MySQL で ROUND 関数を使って四捨五入する
MySQL で数値を四捨五入するには ROUND 関数が使えます。
ROUND 関数の構文は次の通りで、数値を指定した小数点以下の桁数に四捨五入します。
ROUND(数値, 小数点以下の桁数)
小数点以下の桁数はオプショナルで、指定しないとデフォルトで 0 になります。
小数点以下の桁数にマイナスの値を指定すると、小数点より左側側(整数部分)に向かって四捨五入される桁を指定できます。
SELECT ROUND(1234.5678), -- 1235
ROUND(1234.5678, -3), -- 1000
ROUND(1234.5678, -2), -- 1200
ROUND(1234.5678, -1), -- 1230
ROUND(1234.5678, 0), -- 1235
ROUND(1234.5678, 1), -- 1234.6
ROUND(1234.5678, 2), -- 1234.57
ROUND(1234.5678, 3); -- 1234.568
MySQL で FLOOR 関数を使って切り捨てする
MySQL で数値を切り捨てするには FLOOR 関数が使えます。
FLOOR 関数の構文は次の通りで、指定した数値を整数に切り捨てします。
FLOOR(数値)
小数点第二位に切り捨てしたい時は、数値を 100 で掛けて FLOOR 関数を使ったあとに 100 で割ることで取得できます。
SELECT FLOOR(1234.1234), -- 1234
FLOOR(1234.5678), -- 1234
FLOOR(1234.5678 * 10) / 10, -- 1234.5000
FLOOR(1234.5678 * 100) / 100, -- 1234.5600
FLOOR(1234.5678 * 1000) / 1000; -- 1234.5670
MySQL で CEILING 関数を使って切り上げする
MySQL で数値を切り上げするには CEILING 関数が使えます。
CEILING 関数の構文は次の通りで、指定した数値を整数に切り上げします。
CEILING(数値)
小数点第二位に切り上げしたい時は、数値を 100 で掛けて CEILING 関数を使ったあとに 100 で割ることで取得できます。
SELECT CEILING(1234.1234), -- 1235
CEILING(1234.5678), -- 1235
CEILING(1234.5678 * 10) / 10, -- 1234.6000
CEILING(1234.5678 * 100) / 100, -- 1234.5700
CEILING(1234.5678 * 1000) / 1000; -- 1234.5680
以上、MySQL で四捨五入・切り捨て・切り上げする方法をご説明しました。