Oracle內建常用數字函數:
CEIL, FLOOR, ROUND, TRUNC, ABS, MOD.


1. CEIL(n)


傳回 > n 或 = n 的最小整數
EX:
SQL> SELECT CEIL(2.01) FROM DUAL;

CEIL(2.01)
----------
3

SQL> SELECT CEIL(-2.01) FROM DUAL;

CEIL(-2.01)
-----------
-2

2. FLOOR(n)


傳回 < n 或 = n 的最大整數
EX:
SQL> SELECT FLOOR(2.5) FROM DUAL;

FLOOR(2.5)
----------
2

SQL> SELECT FLOOR(-2.5) FROM DUAL;

FLOOR(-2.5)
-----------
-3

3. ROUND(n[,m])


對n值做四捨五入,m表示由小數點前後第幾位開始四捨五入,m需為整數,預設值為0
EX:
SQL> SELECT 3.1415 數值, ROUND(3.1415, 2) FROM DUAL;

數值 ROUND(3.1415,2)
---------- ---------------
3.1415 3.14

SQL> SELECT 14.99 數值, ROUND(14.99, -1) FROM DUAL;

數值 ROUND(14.99,-1)
---------- ---------------
14.99 10

4. TRUNC(n[,m])


將n值由小數點前後幾位開始無條件捨去,m可省略,需為整數,預設為0
EX:
SQL> SELECT 3.1415 數值, TRUNC(3.1415, 2) FROM DUAL;

數值 TRUNC(3.1415,2)
---------- ---------------
3.1415 3.14

5. ABS(n)


取得n的絕對值
EX:
SQL> SELECT ABS(-5) FROM DUAL;

ABS(-5)
----------
5

SQL> SELECT ABS(3.1415) FROm DUAL;

ABS(3.1415)
-----------
3.1415

6. MOD(m,n)


取得m除以n後的餘數
EX:
SQL> SELECT MOD(5, 3) FROM DUAL;

MOD(5,3)
----------
2

SQL> SELECT MOD(8, 4) FROM DUAL;

MOD(8,4)
----------
0

arrow
arrow
    文章標籤
    Oracle 數字函數
    全站熱搜

    mark528 發表在 痞客邦 留言(0) 人氣()