分组函数

一 介绍

1.分组函数作用于一组数据,并对一组数据返回一个值

2.组函数类型:

avg 平均值

count

max

min

stddev

sum

二 代码

1.工资最高的:SQL> select max(sal) from emp;

工资最低的:SQL> select min(sal) from emp;

平均工资:SQL> select avg(sal) from emp;

工资总数:SQL> select sum(sal) from emp;

记录总数:SQL> select count(emptno) from emp; 返回的是不为空的记录

SQL> select count(distinct emptno) from emp;

返回的是非空且不重复的记录总数 distinct是去掉重复的

也可以写为:

SQL> select min(sal),max(sal),min(sal) from emp;

结果为:

MIN(SAL) MAX(SAL) MIN(SAL)

---------- ---------- ----------

800 5000 800

注:(1)可以对数值型数据使用AVG 和 SUM 函数。

(2)可以对任意数据类型的数据使用 MIN 和 MAX 函数。

也可以对日期使用

SQL> select min(hiredate) from emp;

SQL> select max(hiredate) from emp;

2.分组数据

group by子句使用

例子:查询出employees中各部门的平均工资

SQL> select department_id,avg(salary) from employees group by department_id;

包含在 GROUP BY 子句中的列不必包含在SELECT 列表中,所以可以写为:

SQL> select avg(salary) from employees group by department_id;

可以进行多列的分组:

SQL> select department_id,job_id,sum(salary) from employees group by department_id,job_id;

注:(1)不能在 where 子句中使用组函数(注意)。

(2)可以在 HAVING 子句中使用组函数。

3.过滤分组 having子句

例子:部门最高工资比 1000高的部门

SQL> select department_id,max(salary) from employees group by department_id having max(salary)>1000;

每一个部门下有很多员工,通过对部门分组,把是一个部门员工分好在当前部门下,计算出最高的工资对比

4.嵌套组函数

例子:显示平均工资的最大值

SQL> select max(avg(salary)) from employees group by department_id;

oracle打散分组函数,oracle分组函数相关推荐

  1. oracle 高效函数,Oracle分组函数之高效的ROLLUP

    Oracle/" target=_blank>Oracle分组函数之高效的ROLLUP ㈠ 初始化实验坏境 www.2cto.com [sql] hr@ORCL> create ...

  2. oracle 多个分组函数,Oracle之分组函数

    Group by 1. Group by子句(利用group by子句分组数据,当select语句中使用到组函数和字段一起连用时会用到group by,否则会出现错误) Group by 把selec ...

  3. Oracle——函数(单行函数、分组函数、分析函数)

    Oracle SQL 提供了用于执行特定操作的专用函数.这些函数大大增强了 SQL 语言的功能. SQL函数的分类: 单行函数 对每一个函数应用在表的记录中时,只能输入一行结果,返回一个结果,可以出现 ...

  4. Oracle中select函数以及分组多表连接等重要点以及示例

    Oracle中select函数以及分组多表连接等重要点 函数 –函数 –内置函数和自定义函数 –单行函数:一条记录返回一个结果的 –多行函数|组函数|聚合函数:多条记录返回一条结果的 单行函数 单行函 ...

  5. Oracle单组函数、分组函数

    文章目录 1.函数基础 1.1SQL函数 1.2两种SQL函数 2.单行函数 2.1说明 2.2字符函数 2.2.1大小写控制函数 2.2.2字符控制函数 2.3数字函数 2.4日期 2.4.1日期的 ...

  6. oracle 条件排序函数,oracle中分组排序函数

    项目开发中,我们有时会碰到需要分组排序来解决问题的情况,如:1.要求取出按field1分组后,并在每组中按照field2排序:2.亦或更加要求取出1中已经分组排序好的前多少行的数据 这里通过一张表的示 ...

  7. oracle中按数字大小排序函数,oracle中分组排序函数用法

    项目开发中,我们有时会碰到需要分组排序来解决问题的情况,如: 1.要求取出按field1分组后,并在每组中按照field2排序:2.亦或更加要求取出1中已经分组排序好的前多少行的数据 这里通过一张表的 ...

  8. oracle求和分组排序,oracle中分组排序函数用法 - 转

    项目开发中,我们有时会碰到需要分组排序来解决问题的情况,如:1.要求取出按field1分组后,并在每组中按照field2排序:2.亦或更加要求取出1中已经分组排序好的前多少行的数据 这里通过一张表的示 ...

  9. oracle 开窗子句,分析函数和开窗函数

    分析函数 分析函数是Oracle专门用于解决复杂报表统计需求的功能强大的函数,它可以在数据中进行分组然后计算基于组的某种统计值,并且每一组的每一行都可以返回一个统计值 分析函数和聚合函数的区别 普通的 ...

  10. [转]SQLServer和Oracle,存储过程区别,常用函数对比

    本文转自:http://www.cnblogs.com/neru/archive/2011/08/18/2144049.html 以前一直用sqlserver,只有很少的一点oracle的经验,现在要 ...

最新文章

  1. c++纯虚函数在父类中调用的规避
  2. 佛吉尼亚大学计算机世界排名,弗吉尼亚大学计算机世界排名
  3. react追加html元素,React给添加元素增加样式
  4. c3p0 高并发mysql 连接sleep情况
  5. 均衡教派服务器维护,LOL十大最坑大区盘点 LOL最坑服务器 均衡教派坐实榜首
  6. 内存颗粒位宽和容量_64M的SDRAM颗粒 一般内存是多大的?
  7. H3C 单区域OSPF配置示例二
  8. 快速配置 Samba
  9. Sql Server和oracle的函数区别总结
  10. 计算机为什么要区别C盘,D盘,E盘等?
  11. drawroundrect java_java – fillRoundRect看似无法正确呈现的问题
  12. java class getfields_JAVA反射中的getFields()方法和getDeclaredFields ()方法的区别
  13. 飞机订票系统(c语言)
  14. 龙芯3a5000下编译postgresql 14.3
  15. 华为路由器IPv6 over IPv4 GRE隧道配置详解
  16. 同城大数据| 有人坐享繁华,有人蜗居窘促,帝都学子们的差距有多大?
  17. 现代电力电子期末考试
  18. HDU 6691 Minimum Spanning Trees
  19. MySQL——MySQL备份
  20. 展锐平台 Android 10.0 OTA升级开机Logo

热门文章

  1. python重难点之装饰器详解
  2. System.FormatException:“输入字符串的格式不正确。”
  3. 【VS实践】如何在vs中自动添加注释
  4. 后端开发之libcurl库编译与安装
  5. linux 虚拟环境
  6. 容器云原生DevOps学习笔记——第二期:如何快速高质量的应用容器化迁移
  7. ADAS系统长篇综述(下)
  8. Geo-CNN的三维点云
  9. TCP/UDP对比总结
  10. Multiple substitutions specified in non-positional format; did you mean to add the formatted=”false”