Oracle SQL 関数 : TRUNC : 数値切捨て処理
numberRet := TRUNC( numberSrc [ , numberUnit ] ); TRUNCは数値データnumberSrcを小数点以下numberUnit桁までに切り捨てた数値を返します。 numberUnitが省略されると0(ゼロ)と指定したことと同様で、小数点以下を切り捨てます。 numberUnitが負の場合は、小数点から見てnumberUnit*(-1)の位置の桁以下を全て0にします。
numberUnitの値と切り捨てる桁についてはROUND関数と似ています。
numberUnit値 | 切り捨てる桁 |
---|---|
3 | 小数点以下4桁目 |
2 | 小数点以下3桁目 |
1 | 小数点以下2桁目 |
0 | 小数点以下1桁目 |
-1 | 一の位の桁 |
-2 | 十の位の桁 |
-3 | 百の位の桁 |
SQL> SELECT TRUNC(1234.5678, 3) DP4 ,TRUNC(1234.5678, 2) DP3 , 2 TRUNC(1234.5678, 1) DP2 ,TRUNC(1234.5678, 0) DP1 , 3 TRUNC(1999.5678,-1) DPL1,TRUNC(1999.5678,-2) DPL2,TRUNC(1999.5678,-3) DPL3 4 FROM DUAL; DP4 DP3 DP2 DP1 DPL1 DPL2 DPL3 ---------- ---------- ---------- ---------- ---------- ---------- ---------- 1234.567 1234.56 1234.5 1234 1990 1900 1000