数学中Oracle,Oracle 惯用函数- 字符和数学函数

Oracle 常用函数- 字符和数学函数

在oracle的开发和使用中,经常需要用到各种各样的函数,这一章归纳下简单的字符串、数学函数,以后需要用起来也方便点,也能让有缘的同学少走一点弯路。

--常用字符相关函数

1、substr字符串截取

substr(字符串,截取开始位置,截取长度)

select substr('abcdef',1,3) from dual

截取开始位置,0和1都是表示截取的开始位置为第一个字符;

2、instr查找子串位置

select instr('abcfdgfdhd','fd')from dual

返回第一个子串的位置。

3、||字符串连接

select 'hello'||', world' fromdual;

4、trim对字符串两边的处理

trim一般都是用在删除字符串两边的空格,也可以用来删除字符串两边的指定字符。trim指定删除的字符串只能是单个字符。

1. trim()删除字符串两边的半角空格。

2. ltrim()删除字符串左边的半角空格。

3. rtrim()删除字符串右边的半角空格。

4. trim('字符1' from '字符串2')分别从字符2串的两边开始,删除指定的字符1。

5. trim([leading | trailing | both] trim_char from string)从字符串String中删除指定的字符trim_char。

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

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

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

select trim('  ffm   ') as name from dual;

select ltrim('  ffm   ') as name from dual;

select rtrim('  ffm   ') as name from dual;

select trim(leading 'f' from 'ffmmff') from dual ;

select trim(trailing  'f' from'ffmmff') from dual ;

select trim(both  'f' from 'ffmmff')from dual ;

5、ascii返回字符串首字母的Ascii值

select ascii('a') from dual

6、chr返回ascii值对应的字母

select chr(97) from dual

7、length计算字符串长度

select length('ffm') from dual

8、initcap(首字母变大写),lower(变小写),upper(变大写)

select lower('fFM'),upper('fFM'),initcap('fFM') from dual;

9,Replace替换字符

replace('将要更改的字符串','被替换掉的字符串','替换字符串')

select replace('ffm','m','1983')from dual;

10、translate替换指定字符串

TRANSLATE(string,from_str,to_str)

TRANSLATE是REPLACE所提供的功能的一个超集。返回将(所有出现的)from_str中的每个字符替换为to_str中的相应字符以后的string。如果from_str比to_str长,那么在from_str中而不在to_str中的额外字符将从string中被删除,因为它们没有相应的替换字符。to_str不能为空。

select translate('ffm','m','1983') from dual;

返回结果为:ff1

11、lpad [左添充] rpad [右填充](用于控制输出格式)

select lpad('ffm',8,'=') s1, rpad('ffm',8,'=')s2 from dual;

--常用数字、数学相关函数

1、取整函数(ceil向上取整,floor向下取整)

select ceil(66.6) N1,floor(66.6)N2 from dual;

2、取幂(power)和求平方根(sqrt)

select power(3,2) N1,sqrt(9) N2from dual;

3、求余(mod)

select mod(9,5) from dual;

4、返回固定小数位数(round:四舍五入,trunc:直接截断)

select round(66.667,2)N1,trunc(66.667,2) N2 from dual;

5、返回值的符号(sign正数返回为1,负数为-1)

select sign(-32),sign(293) fromdual;

6、返回x的绝对值ABS(x)

SELECT ABS(3), ABS(-1) FROM DUAL;

7、返回以x为底y的对数LOG(x,y)

8、返回x的y次幂POWER(x,y)

9、返回x的平方根SQRT(x)

SELECTLOG(10,100), POWER(3,3), SQRT(4) FROM DUAL;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值