PLSQL 数值函数

2021/10/23 19:10:18

本文主要是介绍PLSQL 数值函数,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

函数
┌系统函数┌单行函数┌数值函数
│        │        ├字符函数
│        │        ├日期函数
│        │        ├转换函数
│        │        └通用函数
│        ├聚合函数
│        └分析函数
└用户自定义


学习函数的五大点:
1.函数的名字
2.函数的功能
3.函数的参数个数
4.函数的参数的类型
5.函数返回值的类型

一:数值函数
1.abs(数)     绝对值            返回值:数值型
select abs(100),abs(-100),abs(-0)
from dual

2.mod(数1,数2)   取余           返回值:数值型
数1除以数2的余数
mod取余中数1数2是没有正负情况的,结果的正负情况看数1
如果数1比数2小,结果为数1
如果数2是1,结果为数1的小数部分
如果数2是0,结果为数1

引申用法:求奇偶性,数2为2,返回值是1则表示数1是奇数,返回值是0则表示数1是偶数
select mod(5,2)
from dual

select mod(-5,2)
from dual

select mod(5,-2)
from dual

select mod(-5,-2)
from dual

select mod(3,5)
from dual

select mod(3.14,1)
from dual

select mod(5,0)
from dual


--假设员工编号是奇数的为男生,偶数为女生,查询所有的男员工的员工信息
select *
from emp
where mod(empno,2)=1


--查询128和13的余数
select mod(128,13)
from dual

3.ceil(数)      向上取整      返回值:数值型
4.floor(数)     向下取整      返回值:数值型

select ceil(3.14),floor(3.14),ceil(-3.14),floor(-3.14)
from dual


5.round(数1[,数2])     四舍五入            返回值:数值型
数1:要进行四舍五入的数
数2:四舍五入保留几位小数,不写默认到整数,不会自动补零
如果数2是正数则表示四舍五入到小数点后数2位,只看紧跟着的一位
如果数2是负数则表示四舍五入到小数点前数2位,看数2那一位

select round(3.15,1),round(3.55),round(1455,-3),round(3.14,3)
from dual

select round(128320,-5),round(3.142568,4),round(1823564,-2)
from dual

--查询员工工资四舍五入之后的结果
select sal,round(sal)
from emp


--查询员工姓名,工资,部门编号,工资是部门编号的多少倍
--(四舍五入保留两位小数)
select ename,sal,deptno,round(sal/deptno,2)
from emp


6.trunc(数1[,数2])     截断       返回值:数值型   --没有入的四舍五入
数1:要进行截断的数
数2:截断后保留几位小数,不写默认到整数,不会自动补零
如果数2是正数则表示截断到小数点后数2位
如果数2是负数则表示截断到小数点前数2位

select trunc(3.15,1),trunc(3.55),trunc(1455,-3),trunc(3.14,3)
from dual


7.sign(数)     判断正负零     返回值:数值型
正数返回1
负数返回-1
零返回0


select sign(100),sign(-100),sign(0)
from dual


--员工编号比经理编号大的则优秀,小的则一般
--查询所有优秀的员工
select *
from emp
where empno>mgr


select *
from emp
where empno-mgr>0


select *
from emp
where sign(empno-mgr)=1

8.power(数1,数2)      次方和开方         返回值:数值型
数1的数2次方
数2为分数,表示开方,数1开数2次方
select power(2,3),power(2,-3),power(8,1/3)
from  dual


--查询工资的(部门编号的1/10)次方 和  员工编号的平方的结果开三次方的商,四舍五入保留两位小数
select round(power(sal,deptno/10)/
       power(power(empno,2),1/3),2)
from emp


数值函数┌abs(数)            绝对值          返回值:数值型
        ├mod(数1,数2)       取余            返回值:数值型
        ├ceil(数)           向上取整        返回值:数值型
        ├floor(数)          向下取整        返回值:数值型
        ├round(数1[,数2])   四舍五入        返回值:数值型
        ├trunc(数1[,数2])   截断            返回值:数值型
        ├sign(数)           判断正负零      返回值:数值型
        └power(数1,数2)     次方和开方      返回值:数值型



这篇关于PLSQL 数值函数的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程