您的位置:首页 > 数据库 > Oracle

oracle数字函数

2015-10-28 16:23 344 查看
数字函数
1,取整函数(ceil 向上取整,floor 向下取整)
select ceil(66.6) N1,floor(66.6) N2 from dual;

2, 取幂(power) 和 求平方根(sqrt)
select power(3,2) N1,sqrt(9) N2 from dual;

3,求余
select mod(9,5) from dual;

4,返回固定小数位数 (round:四舍五入,trunc:直接截断)
select round(66.667,2) N1,trunc(66.667,2) N2 from dual;

5,返回值的符号(正数返回为1,负数为-1)
select sign(-32),sign(293) from dual;

其他函数
1.user:
返回登录的用户名称
select user from dual;

2.vsize:
返回表达式所需的字节数
select vsize('HELLO') from dual;

3.nvl(ex1,ex2):  
ex1值为空则返回ex2,否则返回该值本身ex1(常用)
例:如果雇员没有佣金,将显示0,否则显示佣金
select comm,nvl(comm,0) from emp;

4.nullif(ex1,ex2):
值相等返空,否则返回第一个值
例:如果工资和佣金相等,则显示空,否则显示工资
select nullif(sal,comm),sal,comm from emp;

5.coalesce:  
返回列表中第一个非空表达式
select comm,sal,coalesce(comm,sal,sal*10) from emp;

6.nvl2(ex1,ex2,ex3) :
如果ex1不为空,显示ex2,否则显示ex3
如:查看有佣金的雇员姓名以及他们的佣金
select nvl2(comm,ename,') as HaveCommName,comm from emp;
原文地址;http://bbs.delit.cn/thread-198-1-1.html
转载请注明出处;
撰写人:度量科技http://www.delit.cn
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: