Oracle数据库之常用函数用法

一、替换        replace(char, search_string, replace_string)  

replace('name','李四','张三')

name:代表要替换的那一列的列名

'李四':需要替换的字符串

'张三':替换的字符串

执行语句后; 

select   
  replace(姓名,'李四','张三')
  from PersoninFo;

查询的过程中把李四都换成了张三!

但是不会影响原数据,其实只是一种显示模式(此处和java中的string不可变性有点类似)

二、length(char)返回字符串的长度。

  select 姓名 from personinfo;

select length(姓名) from PersonInFo;

三、substr(char,m,n)

char:    需要截取字符串的列名

m:    从第几个位置开始(以1为起始值,左边开始数);当m<0,表示从字符串结尾处倒数第几个位置开始。

n:    表示截取几个字符

四、 instr( string1, string2, start_position,nth_appearance )

string1:源字符串,要在此字符串中查找;
string2:要在string1中查找的字符串;
start_position:代表从string1的哪个位置开始查找,此参数可选,如果省略则默认为1。字符串索引从1开始,如果此参数为正,从左到右开始检索;如果此参数为负,则从右到左检索;
nth_appearance:代表要查找第几次出现的string2,此参数可选,如果省略默认为1,不能为负。

五、 concat 和 '||'

concat 和String 类中的一样都是连接符,|| 也是连接符相当于string中的  '+';

六、round(n,m)保留几位小数(四舍五入)

如果没有写m,则四舍五入到整数;

如果m是正数,则四舍五入到小数点后的m位;

如果m是负数,则四舍五入到小数点前的m位;

七、trunc(n,m)对数字和日期进行截取操作

如果没有写m,就直接截去小数部分不考虑四舍五入;

如果m是正数,就直接截取到小数点后的m位;

如果m是负数,就直接截取到小数点前的m位。

trunc(Date)

trunc(sysdate,'yyyy'); --返回当前年的第一天;
trunc(sysdate, 'mm');//返回当前月的第一天;
trunc(sysdate, 'dd');//返回当前时间的年月日;
trunc(sysdate, 'd');//返回当前星期的第一天,美国是从礼拜日开始算周一(所以这里应该是上周的周末);
trunc(sysdate, 'hh');//返回当前小时。

八、取余、取商、取整、绝对值、与0判断函数

取余:mod(number1,number2)

:

取商:trunc()

取整:floor( n )/trunc( n ) 直接截取整数部分,不考虑四舍五入

           ceil( n )考虑四舍五入

绝对值:abs( n ) 返回n 的绝对值

sign:  sign(表达式)

表达式>0  返回1

表达式<0  返回-1

表达式=0 返回0

to_char( ):转换函数,转为字符串

将当前日期转为字符串

to_date( ) 将字符串转化为日期格式

to_number( )  将char或者varchar2类型转为number类型

聚合函数:

平均值:avg()

和:sum()

统计个数:count()

最大值:max()

最小值:min()

其他常用函数:

decode() 判断字符串是否一致

eg:

if(职业==1) then return '教授'
    else if(职业==2) then return '副教授'
    else if(职业==3) then return '导师'
    else return '讲师'  (默认值)

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值