Oracle函数组的使用
--1.组函数
--COUNT():用来统计记录的条数 如果没有记录,返回 0
--COUNT函数可以根据一列或多列进行计算,没有排重功能
--统计EMP表一共有多少条记录
select count(empno) from emp;
select count(*) from emp;
--统计EMP中一共有多少种工作
select count(distinct job) from emp;
--MAX()计算最大值
--查出EMP表中最高工资
select max(sal) from emp;
--MIN()计处最小值
--查出EMP表中的最低工资
select min(sal) from emp;
--SUM()计算总和
--查询EMP表中的员工工资总和
select sum(sal) from emp;
--5) AVG()计算平均值 --> 空值的话会忽略,不会计算在内
--查询员工平均工资
select round(avg (sal)) from emp;
--------------------------------------------------------------------------------
--2.分组统计
--查询出各部门的员工数目
select deptno,count(*) from emp group by deptno;
--求出各部门平均工资
select deptno,round(avg(sal)) from emp group by deptno;
--按照职位分组,求出每个职位的最高和最低工资
select job,max(sal) 最高工资,min(sal) 最低工资 from emp group by job;
--按照职位分组,统计平均工资最高的工资
SELECT MAX(AVG(sal)) FROM emp GROUP BY job;
--按部门名称分组,显示部门名称,以及每个部门的员工数
select d.dname,count(e.empno) from emp e, dept d where e.deptno = d.deptno group by d.dname;
--查询出每个部门的名称,部门的人数,平均工资
select d.dname,count(e.empno) 人数,round(nvl(avg(e.sal),0)) 平均工资 from emp e, dept d where e.deptno = d.deptno group by d.dname;
--一般都是按照一个字段来分组,如果按照多个字段来分组,那么必须多个字段都一样才算一个组
--查询出每个部门的编号,名称,位置,部门的人数,平均工资
select d.deptno,d.dname,d.loc,count(e.empno),round(nvl(avg(e.sal),0)) 平均工资
from dept d,emp e where e.deptno = d.deptno(+) group by d.deptno, d.dname,d.loc;
--查出平均工资大于2000的部门编号与平均工资
select deptno,round(nvl(avg(sal),0)) from emp group by deptno having round(nvl(avg(sal),0)) > 2000;
--显示非销售人员工作名称以及从事同一工作的雇员的月工资总和,并且满足从事同一工作的员工的月工资合计大于5000,输出的结果按月工资总和排序
select job,round(sum(sal)) 工资和 from emp where job != 'SALESMAN' group by job having round(sum(sal)) > 5000 order by round(sum(sal)) desc;
--查询出平均工资最高的部门
select max(round(avg(sal))) from emp group by deptno;
Oracle函数组的使用的更多相关文章
- oracle函数,游标,视图使用总结0.000000000000000000001
oracle函数或者叫存储过程,在实际的开发过程中对于复杂的业务需求是非常有用的,非常有效率的也是非常好玩儿的一个技术点. 平常在开发过程中对于CRUD功能较多.一般SQL即可应付,大不了就是长一点而 ...
- 【函数】Oracle函数系列(2)--数学函数及日期函数
[函数]Oracle函数系列(2)--数学函数及日期函数 1 BLOG文档结构图 2 前言部分 2.1 导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不 ...
- oracle函数listagg的使用说明(分组后连接字段)
关于oracle函数listagg的使用说明 工作中经常遇到客户提出这样的需求,希望在汇总合并中,能够把日期逐个枚举出来. 如图,原始数据是这样的: 客户希望能够实现这样的汇总合并: 那么通常我会使用 ...
- 浅谈Oracle函数返回Table集合
在调用Oracle函数时为了让PL/SQL 函数返回数据的多个行,必须通过返回一个 REF CURSOR 或一个数据集合来完成.REF CURSOR 的这种情况局限于可以从查询中选择的数据,而整个集合 ...
- DrawDib函数组的使用
Microsoft的针对与设备无关位图(DIB位图),在其WIN32 SDK的Multimedia中提供了一组绘制DIB位图的高性能函数组──DrawDib函数组.DrawDib函数组是一组不依赖于图 ...
- oracle学习笔记(三)oracle函数
--oracle 函数 --lower(char):将字符串转换为小写格式 --upper(char):将字符串转换为大写格式 --length(char):返回字符串的长度 --substr(cha ...
- oracle函数和存储过程有什么区别
oracle函数和存储过程有什么区别 1. 返回值的区别,函数有1个返回值,而存储过程是通过参数返回的,可以有多个或者没有 2.调用的区别,函数可以在查询语句中直接调用,而存储过程必须单独调用. 函数 ...
- Oracle函数sys_connect_by_path 详解
Oracle函数sys_connect_by_path 详解 语法:Oracle函数:sys_connect_by_path 主要用于树查询(层次查询) 以及 多列转行.其语法一般为: s ...
- 汉字转拼音的Oracle函数
前言: 最近处理一个特殊的问题,需要用到汉字自动转换拼音的功能. 解决: 在这里找了不少资料,都是有所缺陷,而且也好像很绕.其实是一个很简单的东东.后来还是自己写了一个函数获取.分享出来,给有需要的X ...
随机推荐
- Apache主配置文件httpd.conf 详解
Apache的主配置文件:/etc/httpd/conf/httpd.conf 默认站点主目录:/var/www/html/ Apache服务器的配置信息全部存储在主配置文件/etc/httpd/co ...
- Would Your Work Habits Change if You Were Paid by the Job?
原文地址:http://success-sys.com/2016/09/26/would-your-work-habits-change-if-you-were-paid-by-the-job/ A ...
- spring bean的生命周期
掌握好spring bean的生命周期,对spring的扩展大有帮助. spring bean的生命周期(推荐看) spring bean的生命周期
- android安卓Sqlite数据库实现用户登录注册
看了很多别人写的安卓SQlite数据的操作代码,一点也不通俗易懂,我觉得我写的不错,而且安卓项目也用上了,所以在博客园里保存分享一下!建立一个类 并继承SQLiteOpenHelper public ...
- Python中关于字符串的问题
在Python里面,字符串相加经常会出现'ascii' codec can't decode byte 0xe7 in position 0: ordinal not in range(128)这样的 ...
- Several anatomical structure pics 一些大脑解剖结构图
Source: Wikipedia
- NDT(Normal Distribution Transform) 算法(与ICP对比)和一些常见配准算法
原文地址:http://ghx0x0.github.io/2014/12/30/NDT-match/ By GH 发表于 12月 30 2014 目前三维配准中用的较多的是ICP迭代算法,需要提供一个 ...
- 用信息值进行特征选择(Information Value)
Posted by c cm on January 3, 2014 特征选择(feature selection)或者变量选择(variable selection)是在建模之前的重要一步.数据接口越 ...
- 网站收集ing....
1.账号注册网址 http://bugmenot.com/ PS:只要输入相关网站域名就能立即完成网站注册 2.博客网站 CSDN,博客园,开源中国 3.破解网站 吾爱破解 4.矢量图标 http:/ ...
- [转]ExtJS学习笔记(二):handler与listener的区别
原文地址:http://blog.csdn.net/smilingleo/article/details/3733177 ExtJS里handler和listener都是用来对用户的某些输入进行处理的 ...