Oracle常用函数

Oracle常用函数

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!
2. 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’次的位置;
3. LENGTH(s)函数

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

SELECT LENGTH('我爱中国!') FROM DUAL;
--结果输出:5
4. LOWER(s)函数和UPPER(s)函数

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

5. TRIM(s1,s2)函数、LTRIM(s1,s2)函数、RTRIM(s1,s2)函数

这三个函数分别用来删除字符串s1两边的字符串s2、删除字符串s1左边的字符串s2、删除字符串s1右边的字符串s2;s2默认为空格;

6. REPLACE(s1,s2,s3)函数

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

7. SUBSTR(s1,i,j)函数

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

SELECT SUBSTR('我是中国人,我爱中国!',7,4) FROM DUAL;
--结果输出:我爱中国
--从第7个字符串(包含第7个)开始截取长度为4的字符串。
8. ROUND(n1,n2)函数

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

9. ADD_MONTHS(d,i)函数

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

10. 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  返回当前分钟
11. DECODE()函数两种参数形式

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

11. SIGN(n)函数

该函数根据某个值是0、正数还是负数,分别返回0、1、-1

12. LPAD(s1,n,s2)和RPAD(s1,n,s2)函数

这两个函数分别指将s2填充在s1的左边直到字符串长度达到n和将s2填充在s1的右边直到字符串长度达到n。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值