Oracle 之 常用函式

2021-08-19 04:54:10 字數 1383 閱讀 3528

1: round(x[,y])

功能:返回四捨五入後的值

引數:x,y,數字型表示式,如果y不為整數則擷取y的整數部分,如果y>0則四捨五入為y位小數,如果小於0則為四捨五入到小數點向左第y位。

返回:數字

示例:selectround(5555.6666,2.1).round(5555.6666,-2.6),round(5555.6666) from dual;

返回:5555.67,5600,5556

2:trunc(x[,y])

功能:返回x按精度y擷取後的值

引數:x,y,數字型表示式,如果y不為整數則擷取y整數部分,如果y>0則擷取到y位小數,如果y小於0則擷取到小數點向左第y位,小數前其它資料用0表示。

返回:數字

示例:select trunc(5555.6666,2.1),trunc(5555.6666,-2.6),trunc(5555.0333333) from dual;

返回:5555.66,5500,5555

3:字元型函式

length(c1)

功能:返回字串的長度

說明:多位元組符(漢字,全形符等),按1個位元組符計算

引數:c1字串

返回:數值型

示例:select length('你還好嗎'),length('czw你還好嗎') from dual;

返回:4,7

4:lpad(c1,n[,c2])、rpad(c1,n[,c2])

功能:在字串c1的左(右)邊用字串c2填充,直到長度為n時為止

說明:如果c1長度大於n,則返回c1左邊的n個字元

引數:c1 字串 n 追加字元的總長度 c2 追加字串,預設為空格

返回:字串

示例:select lpad('czwrty',10,'*'),rpad('czwrty',10,'*') from dual;

5:replace(c1,c2,[,c3])

功能:將字串表示式值中,部分相同的字串,替換成新的字串

引數:c1 希望被替換的字元或變數

c2 被替換的字串

c3 要替換的字串,預設為空(刪除的意思,不是空格)

返回: 字串

示例:select replace('he love you','he','i') from dual;

6:substr(c1,n1[,n2])

功能:取子字串

說明:多位元組符(漢字,全形符等),按乙個字元計算

引數:在字元表示式c1裡,從n1開始取n2個字元,若不指定n2,則從第n1個字元知道結束的字元。

返回:字元型

示例:select substr('1234567890',4,4),substr('1234567890',3) from dual;

Oracle 之常用分析函式

oracle自帶功能強大的分析函式,剛接觸了好幾個,才知道原來寫的一些sql完全可以簡化,相見恨晚吶!下面將介紹幾個排名的函式。row number rank dense rank row number可以通過over 根據某欄位排序完之後進行組內 如果有partition by 排序。rank 是...

Oracle常用函式之decode

當欄位username的值為ouxio時,輸出的是12345,當值為hahaa時,輸出22344,其他情況下都輸出emmm。case when篇具體 如下 select case username when ouxio then 12345 when hahaa then 22344 else em...

Oracle中常用的函式之nvl 函式

從兩個表示式返回乙個非 null 值。語法 nvl eexpression1,eexpression2 引數 eexpression1,eexpression2 如 果 eexpression1 的計算結果為 null 值,則 nvl 返回 eexpression2。如果 eexpression1 ...