OracleBronze11gSQL基礎〜単一関数〜

今日は現場でも重宝してた単一関数やります。
単一関数とはなんぞや!


ダメ流覚えかた。
めっちゃかかなあかん処理をたった一言でかたしてくれる。

以上!!

百聞は一見にしかず!!

やっていきます。


単一関数とは
問い合わせの表やビューの各に対して単一の結果を返す。


使える場所は
SELECT WHERE ORDER BYで使える


ネストレベルは
なんぼでも


▲今日は数値関数

                                                                                                                                                    • -

CEIL関数
構文:CEIL(n)
n以上の最も小さい整数を戻す。

SELECT CEIL(14.8) FROM DUAL;

結果15が返ってくる。

                                                                                                                                                    • -

FLOOR関数
構文:FLOOR(n)
n以下の最も大きい整数を戻す。

SELECT FLOOR(14.8) FROM DUAL;

結果14が返ってくる。

                                                                                                                                                    • -

POWER関数
構文:POWER(m,n)
mをn乗する

SELECT POWER(4.2) FROM DUAL;

結果16が返ってくる。

                                                                                                                                                    • -

MOD関数
構文:MOD(m,n)
mをnで割った余りを返す

SELECT MOD(9.4) FROM DUAL;

結果1が返ってくる。

                                                                                                                                                    • -

ROUND関数
構文:ROUND(m[,n])
mをn桁に四捨五入する。
nが負数なら小数点のn桁目を四捨五入する
nが整数なら整数のn桁目になるように四捨五入する。
デフォルトは小数点以下が四捨五入される。

--123.160
SELECT ROUND(123.456.2) FROM DUAL;

--100.000になります
SELECT ROUND(123.456.-2) FROM DUAL;
                                                                                                                                                    • -

TRUNC関数
構文:TRUNC(m[,n])
mをn桁切捨てる。
nが負数なら小数点のn桁目を切捨て
nが整数なら整数のn桁目になるように切捨て。
デフォルトは小数点以下が四捨五入される。

--123.150
SELECT TRUNC(123.456.2) FROM DUAL;

--100.000になります
SELECT TRUNC(123.456.-2) FROM DUAL;