`
z_piaoyi
  • 浏览: 22486 次
  • 性别: Icon_minigender_2
  • 来自: 河北
社区版块
存档分类
最新评论

分组函数的介绍及相关案例

SQL 
阅读更多

分组函数的介绍

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

常见的分组函数有:

函数名称

函数描述

Count

返回找到的记录数

Min

返回一个数字列或计算列的最小值

Max

返回一个数字列或计算列的最大值

Sum

返回一个数字列或计算列总和

avg

返回一个数字列或计算列的平均值

分组函数的语法:

SELECT [column,] group_function(column), ... 

FROM table 

[WHERE condition]

[GROUP BY column]

[ORDER BY column];

//返回总记录数   //* 代表的是:一条记录

SQL> select count(*) from emp;

//返回comm不为空的总记录数

SQL> select count(comm) from emp;

//COUNT(DISTINCT expr) 返回 expr非空且不重复的记录总数 

SQL> select count(distinct(sal)) from emp;

注意:组函数忽略空值

//返回所有员工的平均工资   

SQL> select avg(nvl(sal,0)) from emp;

注意:NVL函数使分组函数无法忽略空值

//返回员工编号最小值   

SQL> select min(empno) from emp;

//返回员工工资最大值

SQL> select max(sal) from emp;

//求该月本公司发出的工资总额

SQL> select sum(comm)+sum(sal) from emp;

SQL> select sum(nvl(sal,0)+nvl(comm,0)) from emp;

Group by子句

 如果在查询的过程中需要按某一列的值进行分组,以统计该组内数据的信息时,就要使用group by子句。不管select是否使用了where子句都可以使用group by子句。

注意:group by子句一定要与分组函数结合使用,否则没有意义。

//求出每个部门的员工人数

SQL> select deptno,count(*) as "人数" from emp group by deptno;

//求出每个部门的员工的平均工资

SQL> select deptno,avg(nvl(sal,0)) from emp group by deptno;

//注意:group by 子句中的列不必包含在SELECT 列表中

SQL> select avg(nvl(sal,0)) from emp group by deptno;

//求出某个部门中相同职位的员工人数   group by 后可以跟多个分组的字段

SQL> select deptno,job,count(*) from emp group by deptno,job order by deptno;

非法使用组函数

1、 所用包含于SELECT 列表中,而未包含于组函数中的列都必须包含于 GROUP BY 子句中。

举例:

SQL> select empno,count(job) from emp;(错误用法)

正确写法如下:

SQL> select empno,count(job) from emp group by empno;

2、 不能在 WHERE 子句中使用组函数(注意)。

SQL> select deptno from emp where count(job)>0 group by deptno;(错误用法)

<!--EndFragment-->
分享到:
评论

相关推荐

    oracle笔记分组函数

    oracle笔记分组函数,涉及组函数案例,在使用组函数的过程中注意事项,有具体的案例说明!

    C#设计经典案例设计与实现

    案例3 利用API函数实现动画窗体 案例4 闪烁动画窗体 案例5 滚动字幕动画窗体 案例6 超女卡通窗体 案例7 总在最前的登录窗体 案例8 在屏幕中央的圓形窗体 案例9 半透明的T形窗体 案例10 多文档MDI窗体 案例11 渐变色...

    Visual+C#+2008程序设计经典案例设计与实现.rar

    案例3 利用API函数实现动画窗体 案例4 闪烁动画窗体 案例5 滚动字幕动画窗体 案例6 超女卡通窗体 案例7 总在最前的登录窗体 案例8 在屏幕中央的圓形窗体 案例9 半透明的T形窗体 案例10 多文档MDI窗体 案例11 渐变色...

    PB-Datawindow函数大全

    文中提供有关DataWindow的案例,在案例体现出DataWindow控件函数及使用技巧。通过学习能快速掌握DataWindow控件

    Visual C# 2008程序设计经典案例设计与实现

    案例3 利用API函数实现动画窗体 案例4 闪烁动画窗体 案例5 滚动字幕动画窗体 案例6 超女卡通窗体 案例7 总在最前的登录窗体 案例8 在屏幕中央的圓形窗体 案例9 半透明的T形窗体 案例10 多文档MDI窗体 案例11...

    C# 源码 C#2008经典案例

    案例3 利用API函数实现动画窗体 案例4 闪烁动画窗体 案例5 滚动字幕动画窗体 案例6 超女卡通窗体 案例7 总在最前的登录窗体 案例8 在屏幕中央的圓形窗体 案例9 半透明的T形窗体 案例10 多文档MDI窗体 案例11 渐变色...

    触手可及的大数据分析工具_Tableau案例集

    新手上路包含两章,该部分以各行业案例为依托 ,带你从Tableau的排序、筛选、分层和分组、参数 和函数等方面来全面了解Tableau 9.0的新功能。 成功晋级包含四章,分别从不同行业的案例入手 介绍Tableau的功能。 高手...

    MySQL案例练习.rar

    包含简单查询、常用函数、分组查询、多表查询、(嵌套)子查询、分页查询、联合查询、表中数据的增删改(DML)、表和库的增删改(DDL)、数据类型、常见约束、标识列、事务(TCL)与视图、变量、存储过程、函数和流程控制等...

    Hadoop中MapReduce基本案例及代码(五)

    前四节提供了几个小案例 下面详细介绍MapReduce中Map任务Reduce任务以及MapReduce的执行流程。 Map任务: 读取输入文件内容,解析成key,value对。对输入文件的每一行,解析成key,value对。每一个键值对调用一次map...

    mysql学习笔记和案例(完全版)

    这是我自己学习mysql时的学习笔记,每一个知识点都是自己动手写的,涵盖了mysql中的几乎全部的基础知识点,查询,子查询,分组,排序,常用函数,多表连接,视图,约束,分页,建库建表,数据类型,标识列,级联删除...

    ASP.NET开发实战范例宝典

    第二部分主要介绍实务案例,包括实务案例模块应用程序的使用,权限管理案例,文件管理案例,网络管理案例,应用函数案例,日程表案例,通讯录案例,在线客服案例(网页msn),html编辑器,在线投票案例,在线考试案例...

    mysql学习笔记和案例(完全版)2019_10_17.zip

    识点,查询,子查询,分组,排序,常用函数,多表连接,视图,约束,分页,建库建表,数据类型, 标识列,级联删除,级联置空,联合查询,变量,存储过程,函数,事务,分支结构,循环结构等等,都 有具体的案例代码...

    分组循环热图函数附matlab代码.zip

    附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 5....

    mysql学习笔记和案例(完全版)2019_10_21.zip

    识点,查询,子查询,分组,排序,常用函数,多表连接,视图,约束,分页,建库建表,数据类型, 标识列,级联删除,级联置空,联合查询,变量,存储过程,函数,事务,分支结构,循环结构等等,都 有具体的案例代码...

    SQL常见函数实际应用

    SQL常见函数实际操作应用,可以作为参考用

    《MATLAB R2016a通信系统建模与仿真28个案例分析》源码

    5.2.2伪随机数序列相关函数 5.2.3Gold序列 5.3直接序列扩频系统 5.4利用MATLAB仿真演示直扩信号抑制余弦干扰 5.5跳频扩频系统 5.6BFSK/FH系统性能仿真 第6章随机信号及参数建模分析 6.1倒谱分析 6.2时域建模...

    Excel函数活用范例大辞典(全新版).何先军.2015-2(带书签高清文字版).pdf

    本书侧重于函数的实战应用,共分12章,前10章分别介绍了数学函数、统计函数、日期和时间函数、文本函数、逻辑函数、查找和引用函数、财务函数、信息函数以及数据库和三角函数在实战中的应用;第11 章介绍了函数与...

    mysql学习笔记和案例(完全版)2019_10_22.zip

    识点,查询,子查询,分组,排序,常用函数,多表连接,视图,约束,分页,建库建表,数据类型, 标识列,级联删除,级联置空,联合查询,变量,存储过程,函数,事务,分支结构,循环结构等等,都 有具体的案例代码...

Global site tag (gtag.js) - Google Analytics