ORACLE 常用數值函數


1 ABS(n)
返回數值弄參數的絕對值.它接受一個數值型值作為輸入參數,或者任何可以隱式地轉換為數值型值的值.並且返回數值型值的絕對值.

Select abs(-1) from dual

ABS(-1)

----------

1

2 ACOS(n)
返回參數的反余弦角度,參數為數值型值或可以隱式地轉換為數值型值的值.參數的取值范圍為-1至1.

 

3 ASIN(n)
返回參數的反正弦角度, 參數為數值型值或可以隱式地轉換為數值型值的值.參數的取值范圍為-1至1.

 

4.ATAN(n)
返回參數的反正切值角度, 參數為數值型值或可以隱式地轉換為數值型值的值.返回值表示為弧度.

5 ATAN2(n,m)
返回兩個參數的反正切角度,這兩個參數為數值型值或可以隱式地轉換為數值型值的值.返回值表示為弧度.

6 CEIL(n)
返回與大於參數的最小整數. 參數為數值型值或可以隱式地轉換為數值型值的值.

select ceil(3.1) from dual;

 

CEIL(3.1)

----------

4

 

7 COS(n)
返回參數的余弦, 參數為數值型值或可以隱式地轉換為數值型值的值.該參數應該是一個表示為弧度的角度.

select cos(180*3.14159265359/180) from dual;

 

COS(180*3.14159265359/180)

--------------------------

-1

8 COSH(n)
返回參數的雙曲余弦,參數為數值型值或可以隱式地轉換為數值型值的值. 該參數應該是一個表示為弧度的角度.

select cosh(0) from dual;

 

COSH(0)

----------

1

9 EXP(exp)
返回exp參數的2.71828183次冪. 參數為數值型值或可以隱式地轉換為數值型值的值.

select exp(2) from dual;

 

EXP(2)

----------

7.38905609

 

10 FLOOR(n)
返回小於或等於參數的最大整數. 參數為數值型值或可以隱式地轉換為數值型值的值.

select floor(4.9) from dual;

 

FLOOR(4.9)

----------

4

 

11 LN(n)
返回參數的自然對數. 參數為數值型值或可以隱式地轉換為數值型值的值.

select ln(2) from dual;

 

LN(2)

----------

0.69314718

 

12 LOG(n,n2)
返回第2個參數在第一個參數為底時的對數.底可以是除0和1之外的任何正數.第二參數可以是任意正整數.

select log(2,8) from dual;

 

LOG(2,8)

----------

3

 

13 MOD(n,n2)
返回參數n除以參數n2時的余數.

select mod(10,2) from dual;

 

MOD(10,2)

----------

0

 

14 NANVL(n,n2)
返回其值為非數字的某個binary_float或binary_number的替換值.第1個參數是需要檢查的數字,第2個參數是當第一個參數為NaN時替換值.

select nanvl(to_binary_float('NaN'),-1) from dual;

 

NANVL(TO_BINARY_FLOAT('NAN'),0

------------------------------

0

15 POWER(n,n2)
返回以第2個參數為底第1個參數為冪時的乘冪.

select power(2,3) from dual;

 

POWER(2,3)

----------

8

 

16 REMAINDER(n,n2)
返回第1個參數除以第2個參數時的余數.在用remainder (n,n2)和mod(n,n2)函數在進行運算時,都用了一個公式result=n-n2*(n/n2),區別在於計算n/n2時的處理方式不同.
在remainder(n,n2)函數中,采用round(n/n2),而在mod(n,n2)函數中采用floor(n/n2);

select mod(1.5,1),remainder(1.5,1) from dual;

 

MOD(1.5,1) REMAINDER(1.5,1)

---------- ----------------

0.5 -0.5

 

17 ROUND(n,n2)
將參數n按照n2指定的小數位進行四舍五入.不指定n2時默認n2為0,即近似到個位.如果第2個參數為負數時將對小數點左邊的數作四舍五入,會入到左面的|n|+1位.

select round(345.678,2) from dual; --四舍五入到百分位(小數點后第2位)

 

ROUND(345.678,2)

----------------

345.68

 

select round(345.678) from dual; --四舍五入到個位(小數點前第1位)

 

ROUND(345.678)

--------------

346

 

select round(345.678,-1) from dual; --四舍五入到十位(小數點前第(|-1|+1)2位)

 

ROUND(345.678,-1)

-----------------

350

 

18 SIGN(n)
返回參數n的符號.

l 參數n<0,返回-1;

l 參數=0,返回0;

l 參數>0,返回1;

l 如果參數為BINARY_FLOAT或BINARY_DOUBLE,且小於0,返回-1;

l 如果參數為BINARY_FLOAT或BINARY_DOUBLE,且大於或等於0,返回1;

 

select sign(-10) from dual;

 

SIGN(-10)

----------

-1

19 SIN(n)
返回參數的正弦, 參數為數值型值或可以隱式地轉換為數值型值的值.該參數應該是一個表示為弧度的角度.

 

select sin(30*3.14159265359/180) from dual;

 

SIN(30*3.14159265359/180)

-------------------------

0.50000000000003

 

20 SINH(n)
返回參數的雙曲正弦.

 

select sinh(0) from dual;

 

SINH(0)

----------

0

 

21 SQRT(n)
返回參數的平方根.

select sqrt(9) from dual;

 

SQRT(9)

----------

3

 

22 TAN(n)
返回參數的正切值. 參數為數值型值或可以隱式地轉換為數值型值的值.該參數應該是一個表示為弧度的角度.

select tan(45*3.14159265359/180) from dual;

 

TAN(45*3.14159265359/180)

-------------------------

1.0000000000001

 

23 TANH(n)
返回參數的雙曲正切.

 

select tanh(1) from dual;

 

TANH(1)

----------

0.76159415

 

24 TRUNC(n,n2)
將參數n截取到n2指定的小數位.參數n2可以是一個指定截取小數點右面的正整數,也可以是一個指定截取小數點右邊的負整數(這時的位數為|n2|+1).如果n2為0或不輸入n2則截取到小數點左側的個位數.

select TRUNC(345.678,2) from dual; --截取到百分位(小數點后第2位)

 

TRUNC(345.678,2)

----------------

345.67

 

select TRUNC(345.678) from dual; --截取到個位(小數點前第1位)

 

TRUNC(345.678)

--------------

345

 

select TRUNC(345.678,-1) from dual; --截取十位(小數點前第(|-1|+1)2位)

 

TRUNC(345.678,-1)

-----------------

340

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM