设为首页 加入收藏

TOP

oracle的5个体系结构概念讲解(二)
2018-01-16 14:49:44 】 浏览:125
Tags:oracle 体系结构 概念 讲解
1.2数值函数 round--四舍五入 select round(12.456) from dual; --12 select round(12.656) from dual; --13 select round(12.456,2) from dual;--12.46 select round(12.456,-1) from dual;--10 select round(16.456,-1) from dual;--20 trunc--截断 select trunc(12.456) from dual; --12 select trunc(12.956) from dual; --12 select trunc(12.456,2) from dual;--12.45 select trunc(12.456,-1) from dual;--10 select trunc(16.456,-1) from dual;--10 mod--取余 select mod(10,3) from dual;--1 select mod(10,2) from dual;--0 1.3日期类型 日期1-日期2=数值(单位:天) 当前时间-入职时间=工龄 select sysdate from dual 获取员工入职的天数 select ename,hiredate,sysdate-hiredate from emp 获取员工入职的周数 select ename,hiredate,round((sysdate-hiredate)/7) from emp 获取员工入职的月数 months_between--两个日期的月数差 select ename,hiredate,months_between(sysdate,hiredate),(sysdate-hiredate)/30 from emp add_months--添加月 select sysdate from dual select add_months(sysdate,1) from dual 1.4 转换函数--### 转换函数(重点) --to_char 数值转成字符串 select 12,to_char(12) from dual --to_char 日期转成字符串 select * from emp where to_char(hiredate,'yyyy/MM/dd')= '1981/02/20' select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual select to_char(sysdate,'yyyy'),to_char(sysdate,'mm'),to_char(sysdate,'dd'),to_char(sysdate,'day') from dual --to_number 字符串转数字 select to_number('12') + to_number('34') from dual select '12' + '34' from dual --to_date 字符串转成日期 select add_months(to_date('2016-01-31','yyyy-MM-dd'),1) from dual select * from emp where hiredate=to_date('1981-02-20','yyyy-MM-dd') 1.5 通用函数--了解 --nvl ---###### 语法:nvl(数字类型字段名,0)--当 字段为null时,把它当做0处理。 计算 员工年薪 -- null参与运算结果恒为null select ename,sal,comm,sal*12+comm from emp --nvl存在意义:上面 这样写运行结果有问题:comm没有的,导致年薪也为null。 --### null参与运算结果恒为null select ename,sal,comm,sal*12+nvl(comm,0) from emp --nvl(comm,0)含义:当comm为null时,把它当做0处理。 ====emp表 字段值 英文理解: CLERK--职员 SALESMAN--销售员 MANAGER--经理 ANALYST--分析师 PRESIDENT--总裁 --decode --是【Oracle独有】的---重点 decode(列名,'表中的数据','显示的值','表中的数据','显示的值','表中的数据','显示的值') select ename,job, decode(job, --类似Java:switch case --对某个字段根据取值不同,显示不同的内容 'CLERK','职员', 'SALESMAN','销售员', '其他' ) from emp --条件表达式 --任何关系型数据库都支持--- case 列名 when 值 then 显示的值 end ---和decode功能一样:对某个字段根据取值不同,显示不同的内容 select ename,job , case job when 'CLERK' then '职员' when 'SALESMAN' then '销售员' else '其他' end from emp --2. 多行函数: 聚合函数 组函数 2.1 聚合函数 sum avg count max min select avg(sal) from emp select max(sal)- min(sal) from emp select count(*) from emp select sum(sal) from emp 2.1 组函数:分组 group by 查询每个部门的平均工资 select deptno,max(sal) from emp group by deptno select deptno,avg(sal) from emp group by deptno 查询部门的平均工资大于2000的部门 select deptno,avg(sal) from emp group by deptno having avg(sal)>2000 --where 和having的区别【笔试题】### where过滤的是表中的物理列(表中存在的列) where出现在group by前面, having出现在group by的后面 ----------------------小结------ 五、day01 总结: Oracle的安装和配置 1、加载xp虚拟机 2、在虚拟机中安装Oracle数据库 3、配置网络 加一个虚拟网卡 4、在本机上测试客户端工具instantclient_12_1远程连接虚拟机 5、安装plsqlDev工具,并且配置 简单查询和条件查询--必须掌握 --常用 重点函数 1.字符串: replace length substr 2.数字 round 3.类型转换--### to_char--数字、日期转字符串 to_date--字符串转日期。 4.通用函数(常用 ) nvl 解决:--### n
首页 上一页 1 2 3 下一页 尾页 2/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇查看、修改oracle字符集,查看ora.. 下一篇jdbc:oracle:thin:@192.168.3.98:..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目