暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Oracle常用函数

原创 王三又 2020-06-03
921
  1. CONCAR(s1,s2)函数
    该函数是把字符串s1后面连接字符串s2然后返回新的字符串。如果s1为null则返回s2;如果s2为null则返回s1;如果s1和s2皆为null则返回null。

SELECT CONCAT('Hello ’ ‘World!’) INFO FROM DUAL;
–结果输出:Hello World!

  1. INSTR(s1,s2,i,j)函数
    该函数用于返回字符串s2在字符串s1中第j次出现的位置从字符串s1第i个字符开始。没有发现要查找的字符时返回0;如果i为负数从那么搜索从右往左进行,但是函数的返回位置还是按从左往右计算。s1和s2为字符串;i和j为整数,默认为1;

SELECT INSTR(‘oracle 11g’,‘1’,3,2) FROM DUAL;
–结果输出:9
–从第三个字符‘a’开始查找‘1’出现第‘2’次的位置;

  1. LENGTH(s)函数
    该函数用于返回字符串s的长度,如果s为null则返回null;

SELECT LENGTH(‘我爱中国!’) FROM DUAL;
–结果输出:5

  1. LOWER(s)函数和UPPER(s)函数
    LOWER(s)函数和UPPER(s)函数分别用于返回字符串s的小写形式和大写形式;

  2. TRIM(s1,s2)函数、LTRIM(s1,s2)函数、RTRIM(s1,s2)函数
    这三个函数分别用来删除字符串s1两边的字符串s2、删除字符串s1左边的字符串s2、删除字符串s1右边的字符串s2;s2默认为空格;

  3. REPLACE(s1,s2,s3)函数
    该函数用于将s3字符串替换出现在s1字符串中的所有s2字符串,并返回新的字符串。s3默认值为空字符串。

  4. SUBSTR(s1,i,j)函数
    该函数表示从字符串s1的第i个字符开始截取长度为j的字符串,如果省略参数j则截取至尾部。i和j为整数。

SELECT SUBSTR(‘我是中国人,我爱中国!’,7,4) FROM DUAL;
–结果输出:我爱中国
–从第7个字符串(包含第7个)开始截取长度为4的字符串。

  1. ROUND(n1,n2)函数
    该函数返回舍入小数点右边n2位的n1的值,n2默认值为0。如果n2位负数,就舍入到小数点左边相应位置上,n2为整数。

  2. ADD_MONTHS(d,i)函数
    该函数返回日期d加上i个月之后的结果,i为整数。

  3. TRUNC(a,b)函数
    a 是需要截尾取整的数字。
    b 用于指定取整精度的数字。如果b为正数,则截取小数点后b位;如果为负数,则先保留整数部分,然后从个位开始向前数,并将遇到的数字都变为0。trunc()函数在截取时不进行四舍五入,直接截取。b 的默认值为 0。

–数字例子
SELECT TRUNC(123.456) FROM DUAL; --123
SELECT TRUNC(123.456,1) FROM DUAL; --123.4
SELECT TRUNC(123.456,-1) FROM DUAL; --120

–时间日期例子(当前时间:2020年06月02日16:03:13)
SELECT TRUNC(SYSDATE) FROM DUAL; --2020/6/2 返回当天的日期
SELECT TRUNC(SYSDATE,‘YYYY’) FROM DUAL; --2020/1/1 返回当年第一天.
SELECT TRUNC(SYSDATE,‘MM’) FROM DUAL; --2020/6/1 返回当月第一天.
SELECT TRUNC(SYSDATE,‘D’) FROM DUAL; --2020/5/31 返回当前星期的第一天(以周日为第一天)
SELECT TRUNC(SYSDATE,‘DD’) FROM DUAL; --2020/6/2 返回当前年月日
SELECT TRUNC(SYSDATE,‘HH’) FROM DUAL; --2020/6/2 16:00:00 返回当前小时
SELECT TRUNC(SYSDATE,‘MI’) FROM DUAL; --2020/6/2 16:03:00 返回当前分钟

  1. DECODE()函数两种参数形式
    第一种:decode(条件,值1,返回值1,值2,返回值2,…值n,返回值n,缺省值)
    这个函数的运行结果是,当条件的值等于值1时返回返回值1以此类推,如果都不满足则返回缺省值。
    第二种:decode(字段或字段的运算,值1,值2,值3)
    这个函数运行的结果是,当字段或字段的运算的值等于值1时,该函数返回值2,否则返回值3。值1,值2,值3也可以是表达式。

  2. SIGN(n)函数
    该函数根据某个值是0、正数还是负数,分别返回0、1、-1

  3. LPAD(s1,n,s2)和RPAD(s1,n,s2)函数
    这两个函数分别指将s2填充在s1的左边直到字符串长度达到n和将s2填充在s1的右边直到字符串长度达到n。
    ————————————————
    版权声明:本文为CSDN博主「Shiro_lcd」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/weixin_40042215/article/details/106495809

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论