数据库基本函数——字符函数(Oracle)

一、字符函数

    1、ASCII (<str >)

    str 是字符串,返回str 第一个字母的ASCII 码,它的逆函数是CHR (),例如:

        SELECT ASCII ('A ') BIG_A , ASCII ('z ') BIG_Z FROM emp ;

    返回结果:

        BIG_A    BIG_Z

        65          122

 

    2、CHR (<i >)[NCHAR_CS]

    i是一个数字,函数返回十进制表示的字符,例如

        SELECT CHR (65 ), CHR (122 ), CHR (223 ) FROM emp ;

    返回结果:

        CHR65    CHR122    CHR223

        A            z               B

 

    3、CONCAT (str1 , str2 )

    其中str1str2 均为字符串,函数将str2 连接到str1 的后面,如果str1Null ,则返回str2 ;如果str2Null 则返回str1 ;如果str1str2 都为Null ,则返回Null 。它和操作符|| 返回的结果相同。例如:

        SELECT CONCAT ('slobo ', 'Svoboda') username FROM dual ;

    返回结果:

        Username

        slobo Svoboda

 

    4、INITCAP (str )

    str 为字符串,函数将每个单词的第一个字母大写,其他字母小写返回;单词由空格、控制字符、标点符号限制。例如:

        SELECT INITCAT ('veni ,vedi ,vici ') Ceasar FROM dual ;

    返回结果:

        Ceasar

        Veni,Vedi,Vici

 

    5、INSTR (str1 , [str2 , <i >[, j ]])

    str1str2 均为字符串,ij 为整数;函数返回str2str1 中第i 次出现的位置,搜索从str1 的第j 个字符开始。当没有发现需要的字符时返回0,如果i 为负数,那么搜索将从右到左进行,但是位置的计算还是从左道右,ij 的默认值为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', -2, 3)

        2

 

    6、INSTRB (str1 , [str2 , <i >[, j ]])

    与INSTR ()函数一样,只是其返回的是字节,对于单字节INSTRB ()等于INSTR ()。

 

    7、LENGTH (str )

    str 为字符串,返回str 的长度,如果strNull ,那么将返回Null 值。例如:

        SELECT LENGTH ('Ipso Facto ') ergo FROM dual ;

    返回结果:

        Ergo

        10

 

    8、LENGTHB (str )

    与LENGTH ()一样,只是其返回的是字节长度。

 

    9、LOWER (c )

    返回c 的小写字符,经常出现在WHERE 子串中。例如:

        SELECT LOWER (colorname ) FROM itemdetail WHERE LOWER (colorname ) LIKE '%white %';

    返回结果:

        COLORNAME

        Winterwhite

 

    10、LPAD (str1 , <i >[, str2 ])

    str1str2 均为字符串,i 为整数。在str1 的左侧用str2 字符串补足致长度i ,可多次重复,如果i 小于str1 的长度,那么只返回i 长的str1 字符串,其他的将被截去。str2 的默认值为单空格,参见RPAD ()。

 

    11、LTRIM (str1 , str2 )

    把str1 中最左边的字符去掉,使其第一个字符不在str2 中;如果没有str2 ,那么str1 就不会改变。例如:

        SELECT LTRIM ('Mississippi ', 'Mis ') FROM dual ;

    返回结果:

        LTR

        ppi

 

    12、RPAD (str1 , <i >[, str2 ])

    在str1 的右侧用str2 字符串补足足致长度i ,可多次重复;如果i 小于str1 的长度,那么只返回i 长得str1 字符,其他将被截去。str2 的默认值为单空格,其他与LPAD ()相似。

 

    13、RTRIM (str1 , str2 )

    把str1 中最右边的字符去掉,使其最后一个字符不在str2 中;如果没有str2 ,那么str1 就不会改变。与LTRIM ()相似。

 

    14、REPLACE (str1 [, str2 [, str3 ]])

    str1str2str3 均为字符串,函数用str3 代替出现在str1 中的str2 后返回。例如:

        SELECT REPLACE ('uptown ', 'up ', 'down ') FROM dual ;

    返回结果:

        REPLACE

        downtown

 

    15、SUBSTR (str, <i>[, j])

    str为字符串,i、j为整数,从str的第i位开始返回长度为j的子字符串,如果j为空砸直到串的尾部。

 

    16、SUBSTRB (str , <i >[, j ])

    与SUBSTR ()大致相同,只是ij 是以字节计算。

 

    17、SOUNDEX (str)

    返回与str发音相似的词。

 

    18、TRANSLATE (str1 , str2 , str3 )

    将str1str2 中相同的字符以str3 代替。

 

    19、TRIM ([{{LEADING | TRAILING | BOTH }[ trim_character ] | trim_character } FROM] str )

    从字符串str 中删除指定的字符trim_character

    LEADING :从字符串的头开始删除。

    TRAILING :从字符串的尾部开始删除。

    BOTH :从字符串的两边删除。

 

    20、UPPER (str )

    返回str 的大写,常出现在WHERE 子串中。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值