单行字符串函数
单行字符串函数用于操作字符串数据,他们大多数有一个或多个参数,其中绝大多数返回字符串
ASCII()
c1是一字符串,返回c1第一个字母的ASCII码,他的逆函数是CHR()
CHR(<i>)[NCHAR_CS]
i是一个数字,函数返回十进制表示的字符
CONCAT(,)
c1,c2均为字符串,函数将c2连接到c1的后面,如果c1为null,将返回c2.如果c2为null,则返回c1,如果c1、c2都为null,则返回null。他和操作符||返回的结果相同
INITCAP()
c1为一字符串。函数将每个单词的第一个字母大写其它字母小写返回。单词由空格,控制字符,标点符号限制。
INSTR(,[,<i>[,]])
c1,c2均为字符串,i,j为整数。函数返回c2在c1中第j次出现的位置,搜索从c1的第i个字符开始。当没有发现需要的字符时返回0,如果i为负数,那么搜索将从右到左进行,但是位置的计算还是从左到右,i和j的缺省值为1.
INSTRB(,[,i[,j])
与INSTR()函数一样,只是他返回的是字节,对于单字节INSTRB()等于INSTR()
LENGTH()
c1为字符串,返回c1的长度,如果c1为null,那么将返回null值。
LENGTHb()
与LENGTH()一样,返回字节。
lower()
返回c的小写字符,经常出现在where子串中
LPAD(,<i>[,])
c1,c2均为字符串,i为整数。在c1的左侧用c2字符串补足致长度i,可多次重复,如果i小于c1的长度,那么只返回i那么长的c1字符,其他的将被截去。c2的缺省值为单空格,参见RPAD。
LTRIM(,)
把c1中最左边的字符去掉,使其第一个字符不在c2中,如果没有c2,那么c1就不会改变。
RPAD(,<i>[,])
在c1的右侧用c2字符串补足致长度i,可多次重复,如果i小于c1的长度,那么只返回i那么长的c1字符,其他的将被截去。c2的缺省值为单空格,其他与LPAD相似
RTRIM(,)
把c1中最右边的字符去掉,使其第后一个字符不在c2中,如果没有c2,那么c1就不会改变。
REPLACE(,[,])
c1,c2,c3都是字符串,函数用c3代替出现在c1中的c2后返回。
STBSTR(,<i>[,])
c1为一字符串,i,j为整数,从c1的第i位开始返回长度为j的子字符串,如果j为空,则直到串的尾部。
SUBSTRB(,<i>[,])
与SUBSTR大致相同,只是I,J是以字节计算。
SOUNDEX()
返回与c1发音相似的词
TRANSLATE(,,)
将c1中与c2相同的字符以c3代替
TRIM([[]] from c3)
将c3串中的第一个,最后一个,或者都删除。
UPPER()
返回c1的大写,常出现where子串中
单行字符串函数用于操作字符串数据,他们大多数有一个或多个参数,其中绝大多数返回字符串
ASCII()
c1是一字符串,返回c1第一个字母的ASCII码,他的逆函数是CHR()
| SELECT ASCII('A') BIG_A,ASCII('z') BIG_z FROM emp BIG_A BIG_z 65 122 |
CHR(<i>)[NCHAR_CS]
i是一个数字,函数返回十进制表示的字符
| select CHR(65),CHR(122),CHR(223) FROM emp CHR65 CHR122 CHR223 A z B |
CONCAT(,)
c1,c2均为字符串,函数将c2连接到c1的后面,如果c1为null,将返回c2.如果c2为null,则返回c1,如果c1、c2都为null,则返回null。他和操作符||返回的结果相同
| select concat('slobo ','Svoboda') username from dual username slobo Syoboda |
INITCAP()
c1为一字符串。函数将每个单词的第一个字母大写其它字母小写返回。单词由空格,控制字符,标点符号限制。
| select INITCAP('veni,vedi,vici') Ceasar from dual Ceasar Veni,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 dual INSTR('MISSISSIPPI','I',3,3) 11 select INSTR('Mississippi','i',-2,3) from dual INSTR('MISSISSIPPI','I',3,3) 2 |
INSTRB(,[,i[,j])
与INSTR()函数一样,只是他返回的是字节,对于单字节INSTRB()等于INSTR()
LENGTH()
c1为字符串,返回c1的长度,如果c1为null,那么将返回null值。
| select LENGTH('Ipso Facto') ergo from dual ergo 10 |
LENGTHb()
与LENGTH()一样,返回字节。
lower()
返回c的小写字符,经常出现在where子串中
| select LOWER(colorname) from itemdetail WHERE LOWER(colorname) LIKE '%white%' COLORNAME Winterwhite |
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 Yes NO NO Maybe maybe |
LTRIM(,)
把c1中最左边的字符去掉,使其第一个字符不在c2中,如果没有c2,那么c1就不会改变。
| select LTRIM('Mississippi','Mis') from dual LTR ppi |
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 dual REPLACE downtown |
STBSTR(,<i>[,])
c1为一字符串,i,j为整数,从c1的第i位开始返回长度为j的子字符串,如果j为空,则直到串的尾部。
| select SUBSTR('Message',1,4) from dual SUBS Mess |
SUBSTRB(,<i>[,])
与SUBSTR大致相同,只是I,J是以字节计算。
SOUNDEX()
返回与c1发音相似的词
| select SOUNDEX('dawes') Dawes SOUNDEX('daws') Daws, SOUNDEX('dawson') from dual Dawes Daws Dawson D200 D200 D250 |
TRANSLATE(,,)
将c1中与c2相同的字符以c3代替
| select TRANSLATE('fumble','uf','ar') test from dual TEXT ramble |
TRIM([[]] from c3)
将c3串中的第一个,最后一个,或者都删除。
| select TRIM(' space padded ') trim from dual TRIM space padded |
UPPER()
返回c1的大写,常出现where子串中
| select name from dual where UPPER(name) LIKE 'KI%' NAME KING |
本文介绍了单行字符串函数,用于操作字符串数据,多数有一个或多个参数,绝大多数返回字符串。详细阐述了如ASCII()、CHR()、CONCAT()等多个函数的功能及使用方法,包括参数设置、返回值情况等。

2万+

被折叠的 条评论
为什么被折叠?



