oracle处理空值的单行函数,oracle单行函数

单行函数:

函数类别:

单行:返回单个结果:substr,length

多行:返回多个结果,any,all

单行的分类:

字符类,日期类,数字类,转换类,通用类

1.字符类

转换大小写:

lower:转换为小写

Select ENAME,LOWER(ENAME) from EMP

upper:转换为大写

Select upper('abcd') from DUAL

initcap :首字母大写

Select INITCAP(ENAME) from EMP

2.字符处理类

concat:连接两个不同的列,CONCAt只能接受两个参数

Select CONCAT(EMPNO,ENAME) from EMP

Select CONCAT('A','B') from dual

substr:截取子串

下标从1开始

Select SUBSTR(ENAME,2) from EMP--从第2个位置截到末尾

Select SUBSTR(ENAME,2,3) from EMP--从第2个位置截取3个

length:提取长度

Select ENAME,length(ename) from emp

INSTR:相当于String类中的indexOf,求索引

Select ENAME,instr(ename,'A') from emp

LPAD和RPAD的用法

表示补充的含义

Select LPAD(SAL,10,'*') from EMP

Select RPAD(SAL,10,'*') from EMP

将sal显示为10位,不足的位置补上字符*

trim两边滤空

Select Trim('   A B C      ') from DUal

使用LTrime和RTrim过滤一边的空格

Select LTrim('   A B C      ') from DUAL

REPLACE:替换

Select ename ,Replace(ename,'A','B') from EMP

3.数字转换类:

ROUND:四舍五入

TRUNC:截取

MOD:取余

Select ROUND(16.336666663,3) from DUAL

Select TRUNC(16.33666666,3) from DUAL

Select Mod(8,3) from DUAL

4.日期类函数

sysdate:年月日时分秒

日期+-1,都代表一天的时间,比如:

Select TRUNC(Sysdate-365) from DUAL

Select Sysdate-1/24/60 from DUAL

5.日期运算函数

MONTHS_BETWEEN:表示两个日期的月份之差

Select EMPNO,HIREDATE,MONTHS_BETWEEN(Sysdate,HIREDATE)/12 from EMP

ADD_MONTHS:表示给指定的日期加一个月数

Select HIREDATE,ADD_MONTHS(HIREDATE,3) from EMP

NEXT_DAY:表示以当前时间为基准,下一个"目标日"的日期

Select NEXT_DAY(Sysdate,'星期二') from DUAL

LAST_DAY:计算当前日期的最后一天

Select HIREDATE,LAST_DAY(HIREDATE)-HIREDATE from EMP

ROUND:对日期进行四舍五入

Select ROUND(Sysdate,'YEAR') from DUAL

TRUNC:表示对日期进行截取

Select TRUNC(Sysdate) from DUAL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值