程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> oracle 單行函數整理(數字函數篇)

oracle 單行函數整理(數字函數篇)

編輯:Oracle數據庫基礎
Oracle 單行函數整理(數字函數篇)數字函數:
Round(列名|表達式, n):將列或表達式所表示的數值四捨五入到小數點後的第n位。
Trunc(列名|表達式,n):將列或表達式所表示的數值截取到小數點後的第n位。
Mod(m,n)取m除以n後得到的余數。
abs:求絕對值函數,如:abs(-5) 5 
sqrt:求平方根函數,如:sqrt(2) 1.41421356 
power:求冪函數,如:power(2,3) 8 
cos:求余弦三角函數,如:cos(3.14159) -1 
mod:求除法余數,如:mod(1600, 300) 100 
ceil:求大於等於某數的最小整數,如:ceil(2.35) 3 
floor:求小於等於某數的最大整數,如:floor(2.35) 2 
round:按指定精度對十進制數四捨五入,如:round(45.923, 1),結果,45.9 
round(45.923,0),結果,46 
round(45.923,-1),結果,50 
trunc:按指定精度截斷十進制數,如:trunc(45.923, 1),結果,45.9 
trunc(45.923),結果,45 
trunc(45.923,-1),結果, 40 
  •    Normal  0    7.8 磅  0  2    false  false  false                                          MicrosoftInternetExplorer4    /* Style Definitions */ table.MsoNormalTable{mso-style-name:普通表格;mso-tstyle-rowband-size:0;mso-tstyle-colband-size:0;mso-style-noshow:yes;mso-style-parent:"";mso-padding-alt:0cm 5.4pt 0cm 5.4pt;mso-para-margin:0cm;mso-para-margin-bottom:.0001pt;mso-pagination:widow-orphan;font-size:10.0pt;font-family:"Times New Roman";mso-fareast-font-family:"Times New Roman";mso-ansi-language:#0400;mso-fareast-language:#0400;mso-bidi-language:#0400;}數值轉換符: 
    9:代表一位數字,如果是正數,前面是空格,如果是負數,前面是?號,如:9999 
    0:代表一位數字,在相應的位置上如果沒有數字則出現0 0000 
    ,:逗號,用作組分隔符,如:99,999 
    .:小數點,分隔整數和小數,如:999.9 
    $:$貨幣符號,如:$999.9 
    L:本地貨幣符號,如:L999.99 
    FM:去掉前後的空格,如:FM999.99 
    EEEE:科學計數法,如:9.9EEEE 
    S:負數符號?放在開頭,如:S999.9 
    將數值轉換成字符串並按新格式顯示。 
    執行以下查詢: 
    Sql代碼 
    SELECT TO_CHAR(sal,'$99,999') SALARY FROM emp    
            WHERE ename = 'SCOTT';   
    結果為: 
    Sql代碼 SALARY
    ------------
        $4,000
    說明:格式字符串中“$”表示轉換結果前面添加$。“9”表示一位數字,“99,999”表示結果可以顯示為5位的數字。“,”表示在相應的位置上 添加逗號。如果實際數值位數不足5位,則只顯示實際位數,如4000實際位數為4位,則只顯示4位。如果實際位數超過5位,則會填充為#號。
    其他函數 
    nvl:空值轉換函數,如:nvl(null, '空'),結果:空 
    decode:實現分支功能,如:decode(1,1, '男', 2, '女'),結果:男 
    userenv:返回環境信息,如:userenv('LANGUAGE'),結果:SIMPLIFIED CHINESE_CHINA.ZHS16GBK 
    greatest:返回參數的最大值,如:greatest(20,35,18,9),結果:35 
    least:返回參數的最小值,如:least(20,35,18,9),結果:9 
    空值的轉換 
    如果對空值NULL不能很好的處理,就會在查詢中出現一些問題。在一個空值上進行算術運算的結果都是NULL。最典型的例子是,在查詢雇員表時,將工資sal字段和津貼字段comm進行相加,如果津貼為空,則相加結果也為空,這樣容易引起誤解。 
    使用nvl函數,可以轉換NULL為實際值。該函數判斷字段的內容,如果不為空,返回原值;為空,則返回給定的值。 
    如下3個函數,分別用新內容代替字段的空值: 
    nvl(comm, 0):用0代替空的Comm值。 
    nvl(hiredate, '01-1月-97'):用1997年1月1日代替空的雇傭日期。 
    nvl(job, '無'):用“無”代替空的職務。
    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved