單行字符串函數用於操作字符串數據,他們大多數有一個或多個參數,其中絕大多數返回字符串
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 emp chr65 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)11 select instr(''mississippi'',''i'',-2,3) f rom 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(,[,])
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(,[,])
在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(,[,])
c1為一字符串,i,j為整數,從c1的第i位開始返回長度為j的子字符串,如果j為空,則直到串的尾部。
select substr(''message'',1,4) from dualsubsmess substrb(,[,]) ]
與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