打不死的心态活到老。

Oracle函数(第二讲)

上一篇 / 下一篇  2007-08-03 12:50:13 / 个人分类:数据库

{4d7SA:}w`2e*s0 

R:a9BJpijd0

Hy @3oS]d0 51Testing软件测试网Me9Qo(L w r

I)fJ_t H'Sq0网络收集

Dn"U9L6q"U6JG0

Oracle函数(第二讲)

"HW O;y,X-lr+r0

上接:Oracle函数(第一讲)51Testing软件测试网1||3` yPj

单行字符串函数51Testing软件测试网$s bte{}3v*~

  单行字符串函数用于操作字符串数据,他们大多数有一个或多个参数,其中绝大多数返回字符串

,pe.Xk)D0

  ASCII()51Testing软件测试网:w \#\7Vu e9r
  c1是一字符串,返回c1第一个字母的ASCII码,他的逆函数是
CHR()
le9i0h4D Tz OD0SELECT ASCII('A') BIG_A,ASCII('z') BIG_z FROM empBIG_A BIG_z65 122
51Testing软件测试网C:|Yy/GW1`

  CHR(i)[NCHAR_CS]
.i,J%c~.f0
  i是一个数字,函数返回十进制表示的字符

.n0i(Jy.P3l8|h0t5|B0select CHR(65),CHR(122),CHR(223) FROM empCHR65 CHR122 CHR223Az B

1`#o Q,R F0

  CONCAT(,)51Testing软件测试网 z)YVr-DJ eU
  c1,c2均为字符串,函数将c2连接到c1的后面,如果c1null,将返回c2.如果c2null,则返回c1,如果c1c2都为null,则返回null。他和操作符||返回的结果相同

ta pF`8[0select concat('slobo ','Svoboda') username from dualusernameslobo Syoboda
51Testing软件测试网 }?1ro#`3E5]

  INITCAP()51Testing软件测试网]*D,{NK [,Z
  c1为一字符串。函数将每个单词的第一个字母大写其它字母小写返回。单词由空格,控制字符,标点符号限制。

)aw:`#{D1}9T!q0select INITCAP('veni,vedi,vici') Ceasar from dualCeasarVeni,Vedi,Vici

+F2LTdS\9ri;a0

  INSTR(,[,i[,]])51Testing软件测试网4S5J`q [Xm fJ3o
  c1,c2均为字符串,i,j为整数。函数返回c2c1中第j次出现的位置,搜索从c1的第i个字符开始。当没有发现需要的字符时返回0,如果i为负数,那么搜索将从右到左进行,但是位置的计算还是从左到右,ij的缺省值为
1.
\^/w.}8` {$r q0select INSTR('Mississippi','i',3,3) from dualINSTR('MISSISSIPPI','I',3,3)11select INSTR('Mississippi','i',-2,3) from dualINSTR('MISSISSIPPI','I',3,3)2
51Testing软件测试网 mTVF/wRVr

  INSTRB(,[,i[,j])
og'ihzFcc%L9B0
  与INSTR()函数一样,只是他返回的是字节,对于单字节INSTRB()等于INSTR()

S!v/W(|4})@*ki0H2Z0

  LENGTH()51Testing软件测试网:? { xLA
  c1为字符串,返回c1的长度,如果c1null,那么将返回null值。
51Testing软件测试网Z4CtH+G\1a
select LENGTH('Ipso Facto') ergo from dualergo10

9MA)Mz5D~Y2]0

  LENGTHb()51Testing软件测试网&Khk {#t0r }3_(oD
  与LENGTH()一样,返回字节。

*m4H M-n3l!B&rg;z0

  lower()51Testing软件测试网_;^1F)a8BH3^$Q"Hm
  返回c的小写字符,经常出现在where子串中

ro.Y?B s"@0select LOWER(colorname) from itemdetail WHERE LOWER(colorname) LIKE '%white%'COLORNAMEWinterwhite

"P/m%f+r,I5a0

  LPAD(,i[,])
eR g!rA E-D+g0
  c1,c2均为字符串,i为整数。在c1的左侧用c2字符串补足致长度i,可多次重复,如果i小于c1的长度,那么只返回i那么长的c1字符,其他的将被截去。c2的缺省值为单空格,参见RPAD

,J J/sG4pFS;g`!a0select LPAD(answer,7,'') padded,answer unpadded from question;PADDED UNPADDED Yes YesNO NOMaybe maybe

B+nw&D}4JJ0

  LTRIM(,)51Testing软件测试网|)[H6?V.[NT
  把c1中最左边的字符去掉,使其第一个字符不在c2中,如果没有c2,那么c1就不会改变。

5s:\w*M-T-D1G|4j0select LTRIM('Mississippi','Mis') from dualLTRppi
51Testing软件测试网3b8US)yz

  RPAD(,i[,])
#aOj V \x0
  在c1的右侧用c2字符串补足致长度i,可多次重复,如果i小于c1的长度,那么只返回i那么长的c1字符,其他的将被截去。c2的缺省值为单空格,其他与LPAD相似
51Testing软件测试网o(C*q^ r,H-O~

  RTRIM(,)51Testing软件测试网+p%? YGq X'P
  把c1中最右边的字符去掉,使其第后一个字符不在c2中,如果没有c2,那么c1就不会改变。
51Testing软件测试网Hr/J,`%x

  REPLACE(,[,])51Testing软件测试网 Vu+d3OJD@`q
  c1,c2,c3都是字符串,函数用c3代替出现在c1中的c2后返回。

%l L$\ Si.M0select REPLACE('uptown','up','down') from dualREPLACEdowntown

)_ zq~k5e0

  STBSTR(,i[,])51Testing软件测试网w,Qf0JkW `5u X
  c1为一字符串,i,j为整数,从c1的第i位开始返回长度为j的子字符串,如果j为空,则直到串的尾部。
51Testing软件测试网 P|8d#q6t\
select SUBSTR('Message',1,4) from dualSUBSMess
51Testing软件测试网)mlZ ryM/C

  SUBSTRB(,i[,])51Testing软件测试网8g Y-W5b;|a
  与SUBSTR大致相同,只是I,J是以字节计算。

}o"po}eaz:~0

  SOUNDEX()
M0e4~U9e$e/WDG0
  返回与c1发音相似的词
51Testing软件测试网dZ&_;[UH
select SOUNDEX('dawes') Dawes SOUNDEX('daws') Daws, SOUNDEX('dawson') from dualDawes Daws DawsonD200 D200 D250

v*N5Y!}z5[/\0

  TRANSLATE(,,)51Testing软件测试网,V!n!wU S3@_*M
  将c1中与c2相同的字符以c3代替

$fJ:A7N;Rp0select TRANSLATE('fumble','uf','ar') test from dualTEXTramble
51Testing软件测试网 K8nZ"pKVPN$M3S4c

  TRIM([[]] from c3)
X g2}R4C5IU!HprV0
  将c3串中的第一个,最后一个,或者都删除。
51Testing软件测试网#w"u D5k*B*^
select TRIM(' space padded ') trim from dual TRIMspace padded

#BvJ1d6kT0

  UPPER()
4K\r&TbTX+m;L0
  返回c1的大写,常出现where子串中select name from dual where UPPER(name) LIKE 'KI%'NAMEKING
51Testing软件测试网zE B7f^1l$w


TAG: 数据库

 

评分:0

我来说两句

Open Toolbar