ORACLE数据库常用函数学习笔记(停止更新...)

由于工作需要使用Oracle数据库,所以会碰到一些函数,博主会持续更新碰到的函数

 

1.decode函数

decode(字段或字段的运算,值1,值2,值3)
当字段或字段的运算的值等于值1时,该函数返回值2,否则返回值3,值1、2、3也可以是表达式


2.sign()函数
根据某个值是0、正数还是负数,分别返回0,1,-1
用decode结合sign函数比较大小
select decode(sign(变量1-变量2),-1,变量1,变量2)  --取较小值


3.substr函数
substr(string str,int a,int b) 
参数1:string要处理的字符串,参数2:a 截取字符串的开始位置(起始位置是0)
参数3:b 截取的字符串的长度
substr("ABCDEFG", 0); //返回:ABCDEFG,截取所有字符 
substr("ABCDEFG", 2); //返回:CDEFG,截取从C开始之后所有字符 
substr("ABCDEFG", 0, 3); //返回:ABC,截取从A开始3个字符 
substr("ABCDEFG", 0, 100); //返回:ABCDEFG,100虽然超出预处理的字符串最长度,但不会影响返回结果,系统按预处理字符串最大数量返回。 
substr("ABCDEFG", -3, 3); //返回:EFG,注意参数-3,为负值时表示从尾部开始算起,字符串排列位置不变


4.instr函数
instr(sourceString,destString,start,appearPosition)
instr('源字符串','目标字符串','开始位置','第几次出现')
start代表查找的开始位置,这个参数可选,默认为1
如果start的值为负数,则代表从右往左进行查找,但是位置数据仍然从左向右计算
appearPosition代表源字符串中第几次出现目标字符串,参数可选,默认值为1


例如
instr('hello','l',1)   返回3 


instr('hello','l',3)   返回3  从第三个位置起,包含第三个位置


instr('hello','l',4)   返回4


instr('hello','l',-1)   返回4  从右往左查找,从左往右算位置,o前边的l位置是4


instr('hello','l',1,2)  返回4


instr('hello','l',-1,2)  返回3



5.nvl函数
nvl(E1,E2)
如果E1为NULL,则返回E2,否则返回E1本身

————————————————————————————————



6.nvl函数改进后的nvl2函数
nvl2(E1,E2,E3)
如果E1为null,则返回E3,否则返回E2   注意:' '也算null见下图3

 

 

 

 

7.lower(str)函数
作用:将字符或字符串转换成小写


8.upper(str)函数
作用:将字符或字符串转换成大写


9.initcap(str)函数
作用:将字符或字符串的首字母转换成大写字母,其他字母均为小写
当参数为一个字符的时候,效果和upper函数一样

 

 




10.concat(str1,str2)函数
作用:字符(串)连接函数


11.length(str)函数
作用:求字符串的长度


12.round(a,b)函数
作用:对数字进行四舍五入,第二个参数b代表精确到哪一位,默认为0 精确到个位


例如:
round(45.923,2)  45.92
round(45.923,0)  46
round(45.923,-1) 50


13.trunc(a,b)函数
作用:对数字进行截取,不进行四舍五入
第二个参数b代表截取到哪一位,默认为0  


例如:
trunc(45.923,2)   45.92
trunc(45.923)     45
trunc(45.923,-1)  40


14.mod函数
作用:取余数


例如:mod(1600,300)   100

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值