• oracle 常用sql字符函数介绍


    常用字符函数介绍

    1、ascii

    返回与指定的字符对应的十进制数;

    SQL>select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual;

             A          A       ZERO      SPACE

    ---------- ---------- ---------- ----------

            65         97         48         32

    2、chr

    给出整数,返回对应的字符;

    SQL>select chr(54740) zhao,chr(65) chr65 from dual;

    ZHAO CHR65

    ---- -----

    赵   A

    3、concat

    连接两个字符串;

    SQL>select concat('010-','88888888')||'转23' 高乾竞电话 from dual;

    高乾竞电话

    ----------------

    010-88888888转23

    特别说明:concat(字串1或字段1,字串2或字段2)也可以书写成 字串1或字段1 || 字串2或字段2

    4、initcap

    返回字符串并将字符串的第一个字母变成大写;

    SQL>select initcap('smith') upp from dual;

    UPP

    -----

    Smith

    5、instr(C1,C2,I,J)

    在一个字符串中搜索指定的字符,返回发现指定的字符的位置;

    C1  被搜索的字符串;

    C2  希望搜索的字符串;

    I   搜索的开始位置,默认为1;

    J   出现的位置,默认为1;

    SQL>select instr('oracle traning','ra',1,2) instring from dual;

      INSTRING

    ----------

             9

    6、length

    返回字符串的长度;

    SQL>select ename,length(ename),job,length(job),sal,length(to_char(sal)) from emp where ename='SMITH';

    ENAME      LENGTH(ENAME) JOB       LENGTH(JOB)       SAL LENGTH(TO_CHAR(SAL))

    ---------- ------------- --------- ----------- --------- --------------------

    SMITH                  5 CLERK               5    800.00                    3

    特别说明:在oracle中单个汉字、字母、还是特殊符号都认为是长度为1

    7、lower

    返回字符串,并将所有的字符小写;

    SQL>select lower('AaBbCcDd') "lower-AaBbCcDd" from dual;

    lower-AaBbCcDd

    --------------

    aabbccdd

    8、upper

    返回字符串,并将所有的字符大写;

    SQL>select upper('AaBbCcDd') "upper-AaBbCcDd" from dual;

    upper-AaBbCcDd

    --------------

    AABBCCDD

    练习:请把雇员的名字,首字母小写,其它大写。

    SQL>select substr(lower(ename),1,1)||substr(upper(ename),2,length(ename)) "eNAME"from emp where ename='SMITH';

    SQL>select concat(substr(lower(ename),1,1),substr(upper(ename),2,length(ename))) "eNAME"from emp where ename='SMITH';

    eNAME

    --------------------

    sMITH

    特别说明:函数是可以相互嵌套,复合使用的。

    9、rpad和lpad(粘贴字符)

    rpad在列的右边粘贴字符 rpad('显示内容'或字段,显示长度,'填充占位符')

    lpad在列的左边粘贴字符 lpad('显示内容'或字段,显示长度,'填充占位符')

    SQL>select lpad(rpad('gao',10,'*'),17,'*') from dual;

    LPAD(RPAD('GAO',10,'*'),17,'*'

    ------------------------------

    *******gao*******

    10、ltrim和rtrim

    ltrim   删除左边出现的字符串 ltrim('原内容'或字段,'要删除的字符串')

    rtrim   删除右边出现的字符串 rtrim('原内容'或字段,'要删除的字符串')

    SQL>select ltrim(rtrim('    gao qian jing    ',' '),' ') from dual;

    LTRIM(RTRIM('GAOQIANJING',''),

    ------------------------------

    gao qian jing

    SQL>select rtrim('**gao qian jing**','*') from dual;

    RTRIM('**GAOQIANJING**','*')

    ----------------------------

    **gao qian jing

    SQL>select ltrim('**gao qian jing**','*') from dual;

    LTRIM('**GAOQIANJING**','*')

    ----------------------------

    gao qian jing**

    11、substr(string,start,count)

    取子字符串,从start开始,取count个

    SQL>select substr('13088888888',3,8) from dual;

    SUBSTR('13088888888',3,8)

    -------------------------

    08888888

    12、replace('string','s1','s2')

    string 希望被替换的字符或变量

    s1  被替换的字符串

    s2  要替换的字符串

    SQL>select replace('he love you','he','i') from dual;

    REPLACE('HELOVEYOU','HE','I')

    -----------------------------

    i love you

    13、soundex

    返回一个与给定的字符串读音相同的字符串;

    SQL>create table table1(xm varchar(8));

    SQL>insert into table1 values('weather');

    SQL>insert into table1 values('wether');

    SQL>insert into table1 values('gao');

    SQL>select xm from table1 where soundex(xm)=soundex('weather');

    XM

    --------

    weather

    wether

    特别说明:soundex找出读音相同的字符串,但无法找出汉字的读音,只能找出英文和拼音的读音。

    14、trim('s' from 'string')

    leading     剪掉前面的字符

    trailing    剪掉后面的字符

    如果不指定,默认为空格符。

    SQL>select trim(0 from 0009872348900) "trim example" from dual;

    trim example

    ------------

    98723489

  • 相关阅读:
    十五组TD信息通的使用体验报告
    如何让Div中的Table居中
    SQL SERVER临时表的使用
    如何将px换成em,px与em区别是什么?
    再说委托
    onclick与onCommand的区别
    亚马逊购物的用户体验分析
    jQuery 1.4 版本的十五个新特性
    如何选择SEO公司才能避免上当
    jQuery对象与dom对象
  • 原文地址:https://www.cnblogs.com/roger112/p/7717478.html
Copyright © 2020-2023  润新知