10章 単一行関数(数値関数)
今回は、数値関数について書いていきます。
覚えることが多くて大変かと思いますが、頑張っていきましょう。
それでは数値関数ですが、これは数値を処理する関数です。そのまんまですね。
数値関数
ROUND |
四捨五入して表示 |
TRUNC |
切り捨てして表示 |
MOD |
割り算の余りを表示 |
ROUND関数
まずROUND関数ですが、これは対象データの四捨五入を行います。
さっそく実行例を見ていきましょう。
SQL> SELECT ROUND(1234.567,2) FROM dual;
ROUND(1234.567,2)
-----------------
1234.57
ROUND関数の第1引数(1234.567)は処理する値となり、
第2引数(2)は表示する小数点の桁数です。
今回では6が少数点第2位となるので、少数点第3位(7)を四捨五入します。
今回の例では定数を指定していますが、列を指定することも可能です。
SQL> SELECT ROUND(1234.567,0) FROM dual;
ROUND(1234.567,0)
-----------------
1235
第2引数を0とした場合、表示する小数点は0桁となります。
また以下のように第2引数を省略した場合も同じ結果となります。
SQL> SELECT ROUND(1234.567) FROM dual;
ROUND(1234.567)
-----------------
1235
では次の実行例です。
SQL> SELECT ROUND(1234.567,-1) FROM dual;
ROUND(1234.567,-1)
-----------------
1230
第2引数にマイナスを使用した場合、整数桁数を表します。
今回の場合は‐1なので、整数1の位(4)が四捨五入となります。
TRUNC関数
TRUNC関数の場合は、ROUND関数と同じ使用方法となります。
ただ四捨五入でなくすべて切り捨てとなります。
SQL> SELECT TRUNC(1234.567,2) FROM dual;
TRUNC(1234.567,2)
-----------------
1234.56
SQL> SELECT TRUNC(1234.567,0) FROM dual;
TRUNC(1234.567,0)
-----------------
1234
SQL> SELECT TRUNC(1234.567,-1) FROM dual;
TRUNC(1234.567,-1)
-----------------
1230
MOD関数
最後にMOD関数です。MOD関数は割り算の余りを表示させる関数です。
SQL> SELECT MOD(10,3) FROM dual;
MOD(10,3)
----------
1
SQL> SELECT MOD(10,2) FROM dual;
MOD(10,2)
----------
0
以上が数値関数となります。
今回の例ではFROM句にdual表を使用しました。
この表はダミー表であり、今回のように表からデータを取得する必要が
ないようなSQL文を実行したいという場合に使用します。
今回はここまでとなります。関数はたくさんあるので覚える必要はないので、
使用するときにまた調べられるようになっていれば良いと思います。