【Oracle】TRUNC で数値を切り捨てる【SQL】

数値を切り捨てるTRUNC

構文

Oracleで数値に切捨てするには「TRUNC」を使います。

TRUNC(数値)

「TRUNC」で小数点以下の数値を切捨てします。

TRUNC(数値,小数桁)

指定した小数桁で数値を切捨てすることもできます。

 

例1. 小数を切捨てするパターン

--数値10.5を切捨てする
SELECT TRUNC(10.5) FROM DUAL;
SELECT TRUNC(10.5, 0) FROM DUAL;
[結果] 10

小数以下を切り捨てし、「10.5→10」となりました。第2パラメータを「指定しない」、もしくは「0」とすると、小数以下を切り捨てします。

例2. 小数桁を指定して切捨てするパターン

--数値10.437を小数第2位で切捨てする
SELECT TRUNC(10.437,2) FROM DUAL;
[結果] 10.43

小数第2位を残して切り捨てし、「10.437→10.43」となりました。

例3. 整数を切捨てするパターン

--数値10.437を整数で切捨てする
SELECT TRUNC(151.437,-2) FROM DUAL;
[結果] 100

整数を切捨てするには第2パラメータをマイナス指定します。ただし整数の切り捨ては小数の場合と切り捨てされる位置が違うので注意が必要です。

「-2」だと10の位を切り捨てします。「151.437→100」となりました。

これで数値を切捨てすることができました。

以上、Oracleで数値を切捨てするTRUNCでした。

コメント