文章目录

  • 单列分组
  • 多列分组
  • 总结

可以使用GROUP BY子句将表中的数据分成若干组
明确:WHERE一定放在FROM后面

单列分组

-- 查询各个job_id的平均工资
SELECT job_id,AVG(salary)
FROM employees
GROUP BY job_id;

多列分组

-- 查询各个department_id,job_id的平均工资
SELECT department_id,job_id,AVG(salary)
FROM employees
GROUP BY department_id,job_id
ORDER BY department_id ASC;

总结

1、SELECT中出现的非组函数的字段必须声明在GROUP BY 中。反之,GROUP BY中声明的字段可以不出现在SELECT中。
2、GROUP BY 声明在FROM后面、WHERE后面,ORDER BY 前面、LIMIT前面
3、MySQL中GROUP BY中使用WITH ROLLUP
4、使用 WITH ROLLUP 关键字之后,在所有查询出的分组记录之后增加一条记录,该记录计算查询出的所有记录的总和,即统计记录数量

#需求:查询各个部门的平均工资,按照平均工资升序排列
SELECT department_id,AVG(salary)
FROM employees
GROUP BY department_id
ORDER BY avg_sal ASC;

注意: 当使用ROLLUP时,不能同时使用ORDER BY子句进行结果排序,即ROLLUP和ORDER BY是互相排斥的。

#以下错误
SELECT department_id,AVG(salary) avg_sal
FROM employees
GROUP BY department_id WITH ROLLUP
ORDER BY avg_sal ASC;

GROUP BY(分组)的使用相关推荐

  1. group by 分组后 返回的是一个同属性的集合

    group by 分组后 返回的是一个同属性的集合  我们可以遍历该集合 转载于:https://www.cnblogs.com/classmethond/p/10164326.html

  2. 卷积网络基础知识---Group Convolution分组卷积

    Group Convolution分组卷积,以及Depthwise Convolution和Global Depthwise Convolution https://www.cnblogs.com/s ...

  3. 详解在group by分组查询中where 和 having的用法和区别。

    我地都知道sql 中 where 和 having 都是用来筛选条件的关键字. 而且having 一般和group by 一齐使用,   但是where 也可以用group by 一齐使用的. 下面用 ...

  4. mysql单列去重复group by分组取每组前几条记录加order by排序

    <div class="post"><h1 class="postTitle"><a id="cb_post_title ...

  5. group by 分组函数 的用法

    GROUP BY 是对结果集 进行分组 然后对每一组 ,可以对每一组进行统计 例如对每一组的某个字段进行统计 例如求和sum(column) 举个例子,我查询某个用户的某个时间段 的信息 1.没用到g ...

  6. mysql group by 聚合_浅析MySQL使用 GROUP BY 分组聚合与细分聚合

    1. 聚合函数(Aggregate Function) MySQL(5.7 ) 官方文档中给出的聚合函数列表(图片)如下: 除非另有说明,否则聚合函数都会忽略空值(NULL values). 2. 聚 ...

  7. group by 分组

    group by 分组:一般情况下group需与统计函数(聚合函数)一起使用才有意义 mysql中的五种统计函数: (1)max:求最大值 select max(goods_price) from g ...

  8. java中mysql分组查询_ES对应mysql的group by分组查询javaApi,多对多关系的分组查询...

    ES对应mysql的group by分组查询javaApi,多对多关系的分组查询 比如我这边有个下列订单索引数据,现在的需求是按用户(fmerchantId)和支付方式(fchannelId)进行分组 ...

  9. group by 分组后 再对所有的数据求和

    SELECT category, count( category ) AS category FROM dept GROUP BY category WITH ROLLUP; WITH ROLLUP ...

  10. MySQL5.7用group by分组根据组中某个字段的最大值求取那条记录(注意是整条记录)

    首先注意,取每组最大的数据和取每组最大的一条记录是两个概念,前者很简单直接分组,max()即可.另外由于我的是5.7.24版本,5.7版本普遍存在一个问题,就是select的字段只能是group by ...

最新文章

  1. Mac下布置appium环境
  2. perl unload gbk oracle 数据库
  3. 16、子查询改写为表连接
  4. python opencv SIFT,获取特征点的坐标位置
  5. SharePoint 2010 使用自定义aspx页面替换列表默认的新建(NewForm.aspx),查看(DispForm.aspx)和编辑(EditForm.aspx)页面...
  6. 使用cocoaPods一键集成第三方登录(新浪微博,qq,微信)
  7. oracle11g设置数据库归档,oracle_Oracle11g RAC开启关闭、设置归档小结,关闭 1.先关数据库: 复制代 - phpStudy...
  8. ssis for循环容器_使用SSIS ForEach Loop容器以日期顺序处理文件
  9. tiptop 编译运行_ERP(tiptop linux下主要命令)
  10. 高等数学第七版同济大学课后习题讲解下册 pdf(免费)
  11. 如何对技术人员进行绩效考核?
  12. ios safari 模拟器_iOS 模拟器调试大法了解一下?
  13. HyperMesh入门笔记
  14. 无人机+强化学习开源项目、工具包汇总
  15. Oracle AutoVue 21.0.2.4 支持的文件格式
  16. VSCode软件介绍
  17. 基于JAVA的工资管理系统计算机毕业设计源码+数据库+lw文档+系统+部署
  18. 高并发常见的解决方案
  19. Java Hutool 汉字转拼音码
  20. 三元前驱体废水除镍钴锰

热门文章

  1. DO、PO、DAO、VO、DTO
  2. 代码块(普通代码块、构造代码块、静态代码块、同步代码块)、初始化(类初始化、对象初始化)
  3. 蓝桥杯java初赛本科组,2012年第三届蓝桥杯全国软件专业人才设计与开发大赛Java本科组初赛试题...
  4. 追赶ChatGPT,我们的差距在哪里?
  5. 测量50A以上电流:意瑞隔离集成式电流传感器CH704
  6. Java 从服务器下载文件到本地
  7. 【粉丝限时福利】个人技术社区正式开始搞福利活动咯。。。奖品丰厚。。。
  8. ROS学习笔记——基于Prometheus无人机开源项目仿真环境配置
  9. Mysql查询每个月的最后一天
  10. 深度学习环境配置7——(30系显卡)windows下的tensorflow-gpu==2.4.0环境配置