添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

在SQL中常用的组函数有以下几个:

  • COUNT():求出全部的记录数     --SELECT COUNT(empno) FROM emp ;
  • MAX()    :求出一组中的最大值  --SELECT MAX(sal) FROM emp ;
  • MIN()     :求出最小值 --SELECT MIN(sal) FROM emp ;
  • AVG()     :求出平均值 --SELECT AVG(sal) FROM emp ;
  • SUM()    :求和 --SELECT SUM(sal) FROM emp WHERE deptno=20 ;
其中MAX()和MIN()一般是针对数字的应用函数。

2.分组统计

要使用GROUP  BY进行分组,此时SQL语法格式如下:

SELECT {DISTINCT} * | 查询列1 别名1, 查询列2 别名2,…
FROM 表名称1 别名1 , 表名称2 别名2 ,…
{WHERE 条件(s)}
{GROUP BY 分组条件 }
{ORDER BY 排序字段 ASC|DESC , 排序字段 ACS | DESC ,…}

1.求出每个部门雇员数量:
SELECT deptno,COUNT(empno) FROM emp GROUP BY deptno ;--按照部门分组的。

2.求出每个部门的平均工资:
SELECT deptno,AVG(sal)FROM emp GROUP BY deptno ;

1.如果程序使用了分组函数,则有两种可以使用的情况:

  • 程序中存在了GROUP BY ,并指定了分组条件,这样可以将分组条件一起查询出来。
  • 如果不适用分组,则只能单独使用分组函数。
2.在使用分组函数的时候,不能出现分组函数和分组条件之外的字段。 {GROUP BY 分组条件 {HAVING 分组条件}} {ORDER BY 排序字段ASC|DESC ,排序字段 ACS | DESC ,…} · 使用HAVING完成以上的操作
SELECT deptno,AVG(sal) FROM emp GROUP BY deptno HAVING AVG(sal)>2000;
5.显示非销售人员工作名称以及从事同一工作雇员的月工资的总和,并且要满足从事同一工作的雇员的月工资合计大于$5000,输出结果按月工资的合计升序排列: 1.组函数在SQL中常用的组函数有以下几个:COUNT():求出全部的记录数     --SELECT COUNT(empno) FROM emp ;MAX()    :求出一组中的最大值  --SELECT MAX(sal) FROM emp ;MIN()     :求出最小值  --SELECT MIN(sal) FROM emp ;AVG()     :求出平均值 --S 日期(exportDate) 数量(amount) -------------- ----------- 14-2月 -08 20 10-3月 -08 2 14-4月 -08 6 14-6月 -08 75 24-10月-09 23 14-11月-09 45 04-8月 -10 5 04-9月 -10 44 04-10月-10
在讲解具体的 分组 统计 操作之前必须要先解决一个问题,什么情况下有可能 分组 ? ·例如:全班,男生一组,女生一组,互相拔河; ·例如:全部,戴眼睛一组,不戴眼睛一组,互相比裸眼视力; ·例如:25 岁之前一组,25 岁之后一组,比年轻。 SELECT [DISTINCT] * | 列名称 [别名] , 列名称 [别名] ,... | 统计 函数 -> 4、确定查询列 FROM 数据表 [别名] , 数据表 [别名] ,... ->1、数据来源 [WHERE 条件(s)] -> 2、过滤数据行
文章目录1. 分组 查询概念2. 分组 与聚合 函数 3.多层 分组 4.having 1. 分组 查询概念 什么是 分组 查询: 分组 查询是按照一定的规则进行 分组 分组 以后数据会聚合,需要使用聚合 函数 ,但是使用聚合 函数 不一定要 分组 分组 的关键字是group by。 按照deptno 分组 ,说明deptno只有10 ,20,30 SQL> select deptno from emp group by deptno; DEPTNO ----------
我是tofacebook,今天给大家谈谈java开发的那些事,在我们实际开发过程往往会遇到各种各样的问题,那遇到问题我们要想办法去解决和汇总,以便下次能找的到,如图我有这样的两条数据 我要根据unit_name这个字段中的多个值进行 分组 统计 数量. wx:pingan-soft 我要显示的格式如下 单位名称 数量 测试单位 1 dd ...
Oracle 和 MySQL 分组 统计 的语法区别在于: 1. Oracle 使用 GROUP BY 子句进行 分组 统计 ,而 MySQL 可以使用 GROUP BY 或者 GROUPING SETS 子句进行 分组 统计 。 2. Oracle 可以使用 ROLLUP 和 CUBE 子句进行多维 分组 统计 ,而 MySQL 只支持 GROUPING SETS 进行多维 分组 统计 。 3. Oracle 可以使用 GROUPING 函数 进行 分组 统计 的辅助计算,而 MySQL 不支持 GROUPING 函数 。 总的来说, Oracle 分组 统计 功能更加强大和灵活,而 MySQL 的 分组 统计 功能则更加简单和易于使用。