oracle单行函数总结
2015-07-06 14:45
453 查看
单行函数的分类:
1.
字符函数
用于处理字符相关的业务
replace:select replace(ename,'A','中国')from emp;
instr:
查询出oracle traning第二个ra出现的位置:
select instr('oracle traing','ra',1,2)from dual;
ascii:返回与指定的字符对应的十进制数
chr:给出整数,返回对应的字符
concat:连接两个字符串:select
concat(ename,’好搞笑’)from emp;
该函数和 || 的作用是一样的:select ename ||
‘好搞笑’ from emp;
initcap:将字符串的第一个字母变为大写
length:返回字符串的长度:select ename from emp where
length(ename)=4;
lower(把所有字符都小写)和upper(把所有字符都大写)函数:
案例:把雇员的名字分别用大写和小写显示出来:
select lower(ename),upper(ename)from emp;
案例2:把雇员的名字,首字母小写,其他字母大写:
select
lower(substr(ename,1,1)) || upper(substr(ename,2,length(ename)-1))
from emp;
lpad(左填充)和rpad(右填充):
select rpad(ename,30,’*’),sal
from emp; :表示ename用3
0个字符显示,不够的用*填充
ltrim和rtrim的用法:select rtim(‘gao qian
jingaaaa’,’a’)from
dual
返回来的结果是‘gao qian jing jing’;就是把右边的a全部删除
trim函数:去掉指定字符串或数字前后的某些字符
ceil函数 用于向上取整:select ceil(23.04)from
dual;返回24
floor函数:用于向下取整
exp:返回一个数的e次方根:select exp(2)from
dual;返回7.38905609
mod函数 取模(余数):select mod(5,3)from
dual 返回2
round函数,用于四舍五入
trunc函数,用于截取小数(此函数没有指定取到几位,默认截取到整数,可以指定截取到小数第几位,如果截取到小数点前面的数字,则被截取的那个数字会用0来代替)
select trunc(54.25524552,5)from
dual 返回54.25524
select trunc(54.25524552,-1)from
dual 返回50
sign:取数字n的符号,大于0返回1,小于0返回-1,等于0返回0:select sign(-8)from
dual
add_months(日期值,增加的月份)函数:把月份加上几个月:select
add_months(hiredate,2)from emp;
sysdate函数:获取系统的当前时间
只获取日期:select sysdate
from dual
获取日期与具体的时间select
to_char(sysdate,’yyyy-mm-dd:hh24:mi:ss’)from
dual;
last_day函数:返回日期的最后一天:select last_day(sysdate)from
dual;
next_date(day,’day’):用于返回离sysdate最近的星期几是几号
to_char(number/date/char):
转换日期:1999-11-11 12:12:12
显示日期
to_char 可以有选择的显示:
比如,查询出1981年入职的员工:
select ename,job,sal from emp where
to_char(hiredate,'yyyy')='1981';
select
to_char(sysdate,’yyyy-mm-dd:hh24:mi:ss’)from
dual;
按照货币格式显示工资:select to_char(sal,'L999G999D99')from
emp;:L代表货币符号,G代表两位数分一组,D表示保留两位小数
to_number:将字符转换为数字
decode:根据不同的情况显示不同的信息(有点像switch语句):
select decode(deptno,10,'10哈哈',20,'20呵呵',30,'30嘻嘻')from emp;
avg(distinct sal):不会对相同的值进行统计;该函数默认是all
1.
字符函数
用于处理字符相关的业务
replace:select replace(ename,'A','中国')from emp;
instr:
查询出oracle traning第二个ra出现的位置:
select instr('oracle traing','ra',1,2)from dual;
ascii:返回与指定的字符对应的十进制数
chr:给出整数,返回对应的字符
concat:连接两个字符串:select
concat(ename,’好搞笑’)from emp;
该函数和 || 的作用是一样的:select ename ||
‘好搞笑’ from emp;
initcap:将字符串的第一个字母变为大写
length:返回字符串的长度:select ename from emp where
length(ename)=4;
lower(把所有字符都小写)和upper(把所有字符都大写)函数:
案例:把雇员的名字分别用大写和小写显示出来:
select lower(ename),upper(ename)from emp;
案例2:把雇员的名字,首字母小写,其他字母大写:
select
lower(substr(ename,1,1)) || upper(substr(ename,2,length(ename)-1))
from emp;
lpad(左填充)和rpad(右填充):
select rpad(ename,30,’*’),sal
from emp; :表示ename用3
0个字符显示,不够的用*填充
ltrim和rtrim的用法:select rtim(‘gao qian
jingaaaa’,’a’)from
dual
返回来的结果是‘gao qian jing jing’;就是把右边的a全部删除
trim函数:去掉指定字符串或数字前后的某些字符
ceil函数 用于向上取整:select ceil(23.04)from
dual;返回24
floor函数:用于向下取整
exp:返回一个数的e次方根:select exp(2)from
dual;返回7.38905609
mod函数 取模(余数):select mod(5,3)from
dual 返回2
round函数,用于四舍五入
trunc函数,用于截取小数(此函数没有指定取到几位,默认截取到整数,可以指定截取到小数第几位,如果截取到小数点前面的数字,则被截取的那个数字会用0来代替)
select trunc(54.25524552,5)from
dual 返回54.25524
select trunc(54.25524552,-1)from
dual 返回50
sign:取数字n的符号,大于0返回1,小于0返回-1,等于0返回0:select sign(-8)from
dual
add_months(日期值,增加的月份)函数:把月份加上几个月:select
add_months(hiredate,2)from emp;
sysdate函数:获取系统的当前时间
只获取日期:select sysdate
from dual
获取日期与具体的时间select
to_char(sysdate,’yyyy-mm-dd:hh24:mi:ss’)from
dual;
last_day函数:返回日期的最后一天:select last_day(sysdate)from
dual;
next_date(day,’day’):用于返回离sysdate最近的星期几是几号
to_char(number/date/char):
转换日期:1999-11-11 12:12:12
显示日期
to_char 可以有选择的显示:
比如,查询出1981年入职的员工:
select ename,job,sal from emp where
to_char(hiredate,'yyyy')='1981';
select
to_char(sysdate,’yyyy-mm-dd:hh24:mi:ss’)from
dual;
按照货币格式显示工资:select to_char(sal,'L999G999D99')from
emp;:L代表货币符号,G代表两位数分一组,D表示保留两位小数
to_number:将字符转换为数字
decode:根据不同的情况显示不同的信息(有点像switch语句):
select decode(deptno,10,'10哈哈',20,'20呵呵',30,'30嘻嘻')from emp;
avg(distinct sal):不会对相同的值进行统计;该函数默认是all
相关文章推荐
- oracle基础笔记day1
- kettle连接oracle出现Error connecting to database: (using class oracle.jdbc.driver.OracleDriver)
- oracle手动卸载
- arcsde10.1 for oracle
- oracle字符串处理函数大全
- oracle分析函数使用
- MYBATIS: Use Oracle Function
- Oracle Instanc Client安装命令工具
- oracle 学习摘录
- Oracle变量定义的三种方式(define,variable,declare)学习笔记
- 利用Oracle分析函数实现多行数据合并为一行
- APP-PER-50022: Oracle Human Resources could not retrieve a value for the User Type profile option.
- Oracle11g用户密码过期
- ORA-12899:列"DP"."META_KPI"."KPI_UNIT"的值太大(实际值:24,最大值20)
- C#中一次执行多条Oracle语句出现ORA-00911,invalid character
- Oracle中job的使用详解
- 总结ORACLE和MYSQL的一些区别
- oracle临时表
- Oracle Log Miner工具说明
- Oracle Session被kill后如何获取会话的进程号