oracle函式 單行字串函式

2021-04-13 06:49:07 字數 2765 閱讀 1721

單行字串函式

單行字串函式用於操作字串資料,他們大多數有乙個或多個引數,其中絕大多數返回字串

ascii()

c1是一字串,返回c1第乙個字母的ascii碼,他的逆函式是chr()

select ascii(''a'') big_a,ascii(''z'') big_z from empbig_a big_z65 122

chr(<i>)[nchar_cs]

i是乙個數字,函式返回十進位制表示的字元

select chr(65),chr(122),chr(223) from empchr65 chr122 chr223a z b

concat(,)

c1,c2均為字串,函式將c2連線到c1的後面,如果c1為null,將返回c2.如果c2為null,則返回c1,如果c1、c2都為null,則返回null。他和操作符||返回的結果相同

select concat(''slobo '',''svoboda'') username from dualusernameslobo syoboda

initcap()

c1為一字串。函式將每個單詞的第乙個字母大寫其它字母小寫返回。單詞由空格,控制字元,標點符號限制。

select initcap(''veni,vedi,vici'') ceasar from dualceasarveni,vedi,vici

instr(,[,<i>[,]])

c1,c2均為字串,i,j為整數。函式返回c2在c1中第j次出現的位置,搜尋從c1的第i個字元開始。當沒有發現需要的字元時返回0,如果i為負數,那麼搜尋將從右到左進行,但是位置的計算還是從左到右,i和j的預設值為1.

select instr(''mississippi'',''i'',3,3) from dualinstr(''mississippi'',''i'',3,3)11select instr(''mississippi'',''i'',-2,3) from dualinstr(''mississippi'',''i'',3,3)2

instrb(,[,i[,j])

與instr()函式一樣,只是他返回的是位元組,對於單位元組instrb()等於instr()

length()

c1為字串,返回c1的長度,如果c1為null,那麼將返回null值。

select length(''ipso facto'') ergo from dualergo10

lengthb()

與length()一樣,返回位元組。

lower()

返回c的小寫字元,經常出現在where子串中

select lower(colorname) from itemdetail where lower(colorname) like ''%white%''colornamewinterwhite

lpad(,<i>[,])

c1,c2均為字串,i為整數。在c1的左側用c2字串補足致長度i,可多次重複,如果i小於c1的長度,那麼只返回i那麼長的c1字元,其他的將被截去。c2的預設值為單空格,參見rpad。

select lpad(answer,7,'''') padded,answer unpadded from question;padded unpadded yes yesno nomaybe maybe

ltrim(,)

把c1中最左邊的字元去掉,使其第乙個字元不在c2中,如果沒有c2,那麼c1就不會改變。

select ltrim(''mississippi'',''mis'') from dualltrppi

rpad(,<i>[,])

在c1的右側用c2字串補足致長度i,可多次重複,如果i小於c1的長度,那麼只返回i那麼長的c1字元,其他的將被截去。c2的預設值為單空格,其他與lpad相似

rtrim(,)

把c1中最右邊的字元去掉,使其第後乙個字元不在c2中,如果沒有c2,那麼c1就不會改變。

replace(,[,])

c1,c2,c3都是字串,函式用c3代替出現在c1中的c2後返回。

select replace(''uptown'',''up'',''down'') from dualreplacedowntown

stbstr(,<i>[,])

c1為一字串,i,j為整數,從c1的第i位開始返回長度為j的子字串,如果j為空,則直到串的尾部。

select substr(''message'',1,4) from dualsub**ess

substrb(,<i>[,])

與substr大致相同,只是i,j是以位元組計算。

soundex()

返回與c1發音相似的詞

select soundex(''dawes'') dawes soundex(''daws'') daws, soundex(''dawson'') from dualdawes daws dawsond200 d200 d250

translate(,,)

將c1中與c2相同的字元以c3代替

select translate(''fumble'',''uf'',''ar'') test from dualtextramble

trim( from c3)

將c3串中的第乙個,最後乙個,或者都刪除。

select trim('' space padded '') trim from dual trimspace padded

upper()

返回c1的大寫,常出現where子串中select name from dual where upper(name) like ''ki%''nameking 

Oracle函式 單行字串函式

函式是一種有零個或多個引數並且有乙個返回值的程式 在sql中oracle內建了一系列函式 被稱為sql或pl sql語句 主要分為兩大類 單行函式 組函式 1.單行函式 字元 數字 日期 轉換 混合型 等多種函式 用於處理單行資料 統稱單行函式 均可用於select where order by 等...

Oracle 內建函式之常見單行字串函式

ascii c1是一字串,返回c1第乙個字母的ascii碼,他的逆函式是chr concat c1,c2均為字串,函式將c2連線到c1的後面,如果c1為null,將返回c2.如果c2為null,則返回c1,如果c1 c2都為null,則返回null。他和操作符 返回的結果相同 initcap c1為...

Oracle單行字元函式

1.lower 字元轉換為小寫 select lower test from dual dual是oracle提供的虛表。2.upper 字元轉換為大寫 select upper test from dual 3.initcap 把每個字元的開頭轉換為大寫,其餘轉換為小寫 select initca...