Oracle では、数値の四捨五入には round 関数を、数値の切り捨てには trunc 関数を使用して行うことができます。ここでは、そのサンプルを掲載しています。
スポンサーリンク
round 関数で四捨五入
サンプルのように四捨五入を行う位置は、小数点以下は正数で、整数部分は負数で指定します。一の位は -1、百の位は -2、・・・のように指定します。
-- 小数点第1位で四捨五入して整数を取得する select round(111.4) from dual -- 結果 111 select round(-111.5) from dual -- 結果 -112 -- 小数点第3位で四捨五入し、小数点第2位までの数値を取得する select round(-111.524234, 2) from dual -- 結果 -111.52 select round(-111.525098, 2) from dual -- 結果 -111.53 -- 百の位で四捨五入する select round(1434.524234, -2) from dual -- 結果 1400 select round(-1594.525098, -2) from dual -- 結果 -1600
trunc 関数で切り捨て
trunc 関数も、round 関数と同様に切捨てを行う位置を指定することができます。
-- 小数点を切り捨てる select trunc(111.4) from dual -- 結果 111 select trunc(-111.5) from dual -- 結果 -111 -- 小数点第3位で切り捨てる select trunc(-111.524234, 2) from dual -- 結果 -111.52 select trunc(-111.525098, 2) from dual -- 結果 -111.52 -- 百の位で切り捨てる select trunc(1434.524234, -2) from dual -- 結果 1400 select trunc(-1594.525098, -2) from dual -- 結果 -1500