码迷,mamicode.com
首页 > 数据库 > 详细

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

时间:2015-01-09 14:21:08      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:oracle   数据库   字符函数   数学函数   

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

--常用字符相关函数

1substr 字符串截取

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

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

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

 

2 instr 查找子串位置

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

返回第一个子串的位置。

 

3|| 字符串连接

 select ‘hello‘||‘, world‘ fromdual;

 

4trim 对字符串两边的处理

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

 

6chr 返回ascii值对应的字母

   select chr(97) from dual

 

7length 计算字符串长度

     select length(‘ffm‘) from dual

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

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

 

9,Replace 替换字符

replace将要更改的字符串‘,‘被替换掉的字符串‘,‘替换字符串

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

 

10translate 替换指定字符串

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

11lpad [左添充] 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、返回xy次幂POWER(x,y)

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

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

 

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

标签:oracle   数据库   字符函数   数学函数   

原文地址:http://blog.csdn.net/ffm83/article/details/42553547

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!