oracle易忘函数用法(2)

INITCAP()

c1为一字符串。函数将每个单词的第一个字母大写其它字母小写返回。单词由空格,控制字符,标点符号限制。

select INITCAP('veni,vedi,vici') Ceasar from dualCeasarVeni,Vedi,Vici

INSTR(,[,[,]])

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(,[,])

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是以字节计算。

posted @ 2012-01-05 10:19  左正  阅读(206)  评论(0编辑  收藏  举报