Oracle常用函数

在Oracle应用中经常用到一些系统的函数来方便应用  今天有时间来小结一下。。

 

 

DECODE函数的格式为:

DECODE(条件, 值1, 翻译值1, 值2, 翻译值2,……,默认值)

实现的功能为,IF条件=值1 THEN RETURN(翻译值1)

<o:p> </o:p>

       IF条件=值2 THEN RETURN(翻译值2)

                  ………

                         ELSE RETURN(默认值)

 

NVL函数的格式为:

NVL(EXPR1,EXPR2)

若EXPR1是NULL,则返回EXPR2,否则返回EXPR1.

 

Substr的格式:

substr('This is a test', 6, 2)          would return 'is'
substr('This is a test', 6)              would return 'is a test'

 

Round 函数 (四舍五入

SELECT ROUND( number, [ decimal_places ] ) FROM DUAL 
参数
number : 
欲处理之数值 
decimal_places : 
四舍五入 , 小数取几位 ( 预设为 0 )

 

CONCAT连接两个字符串;

     select concat('029-','88888888')||'转11'  电话号码 from dual;

 

LENGTH返回字符串的长度;

select name,length(name),addr,length(addr),sal,length(to_char(sal)) from gao.nchar_tst;

 

SUBSTR(string,start,count)

取子字符串,从start开始,取count个

select substr('13088888888',3,8) from dual;

 

CEIL返回大于或等于给出数字的最小整数

SQL> select ceil(3.1415927) from dual;

 

ADD_MONTHS增加或减去月份

SQL> select to_char(add_months(to_date('199912','yyyymm'),2),'yyyymm') from dual;

 LAST_DAY返回日期的最后一天

 select to_char(sysdate,'yyyy.mm.dd'),to_char((sysdate)+1,'yyyy.mm.dd') from dual;

 

MONTHS_BETWEEN(date2,date1)给出date2-date1的月份

 select months_between('19-12月-1999','19-3月-1999') mon_between from dual;

 

NEXT_DAY(date,'day')给出日期date和星期x之后计算下一个星期的日期

select next_day('18-5月-2001','星期五') next_day from dual;

 

SYSDATE用来得到系统的当前日期

 select to_char(sysdate,'dd-mm-yyyy day') from dual;

 

TO_CHAR(date,'format')

 select to_char(sysdate,'yyyy/mm/dd hh24:mi:ss') from dual;

 

TO_DATE(string,'format')

将字符串转化为ORACLE中的一个日期

 

TO_NUMBER

将给出的字符转换为数字

select to_number('1999') year from dual;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值