文档章节

跟小博老师一起学习数据库 ——GROUP BY

博为峰教研组
 博为峰教研组
发布于 2017/04/09 17:31
字数 425
阅读 4
收藏 0

当要根据某些条件对数据分组时,就要使用到GROUP BY语句。GROUP BY语句可结合聚合函数使用,分组条件可是一个也可以是多个。

语法

注意:

使用GROUP BY语句后,查询的只能是出现在GROUP BY子句中的列使用了聚合函数列。

我们还是使用EMP表来做些练习

 

1. 查询有个工种

 

2. 查询每个工种每月所需支付的基本工资

 

3. 查询每个部门平均工资

 

4. 查询每个部门中各个工种的最低工资

 

5. 查询每个工种的最高基本工资,并按基本工资从大到小排序

 

6. 查询除了20部门以外其它部分的平均工资

 

HAVING子

如要对分组后的结果过滤,就不能使用WHERE子句了,应该要使用HAVING增加过滤条件。

例有这样一个需求“查询平均工资大于3000的工种信息”,很多学员可能写成这样

 

以上的SQL语句是错误的,原因是聚合函数(AVG()函数)不能出现WHERE子句中。

我们应调整成以下语句

 

WHERE与HAVING的区别在于WHERE是先对数据过滤HAVING是以分组后的数据再过滤,在某可互

我们一起看个题:

查询除了CLERK,MANAGER工种以外的工种最高基本工资。

WHERE写

 

HAVING写

 

  以上两种写法都能达到预期目标,但查询过程完全不相同,小伙伴自己实际操作操作吧。

© 著作权归作者所有

共有 人打赏支持
上一篇: JavaSE 对象流
博为峰教研组
粉丝 50
博文 1224
码字总数 479077
作品 0
黄浦
程序员
私信 提问
小博老师经验分享 ——如何选择一门开发语言

[引言] 很多希望进入软件开发行业的朋友,经常会问小博老师一个问题,到底选择哪门编程语言好呢?又或是在各大论坛搜索开发语言排名。确实,对于第一次学习软件开发的朋友,选择一定要谨慎,...

博为峰教研组
2016/12/12
2
0
程序员,快通知你们老板上吴恩达的最新AI课

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dQCFKyQDXYm3F8rB0/article/details/84076519 是的,吴恩达老师又出新的 AI 课程了,不愧是劳模中的劳模。 新...

AI科技大本营
11/14
0
0
GROUP BY另类优化技巧

分享嘉宾:知数堂〖SQL开发优化班〗讲师郑松华,韩国Infobridge的SQL优化专家&7年SQL开发和调优经验&资深数据库工程师。 本次主题《GROUP BY另类优化技巧》,主要内容是从 GROUP BY、ORDER B...

iMySQL | 老叶茶馆
2017/04/15
0
0
小博老师解析Java核心技术 ——JSwing选择型控件

[引言] 我们在学习Java编程的时候,如果需要开发客户端窗体类型的程序,可以使用JDK中的awt和swing库。本文开始小博老师就继续为大家演示Java窗体编程中的各类控件,今天主要讲解的是各类选择...

博为峰教研组
2016/12/21
5
0
小博老师IT从业心得 ——给年轻程序员的建议

[引言] 偶尔的,小博老师会被朋友问道:如何成为一名优秀的程序员,更或者,如何成为一名程序员。每次人们问起,小博老师都力图给出不同的答案。因此,我的答案是各种各样的。下面就是小博老...

博为峰教研组
2016/11/30
6
0

没有更多内容

加载失败,请刷新页面

加载更多

码云项目100,水一发

简单回顾一下: 早期构想最多的,是希望能将PHP一些类和编码分区做得更细,所以很多尝试。但不得不说,PHP的功能过于单一,是的,也许写C/C++扩展,可以解决问题,那我为什么不用C#或者Golan...

曾建凯
27分钟前
1
0
Spring应用学习——AOP

1. AOP 1. AOP:即面向切面编程,采用横向抽取机制,取代了传统的继承体系的重复代码问题,如下图所示,性能监控、日志记录等代码围绕业务逻辑代码,而这部分代码是一个高度重复的代码,也就...

江左煤郎
今天
4
0
eclipse的版本

Eclipse各版本代号一览表 Eclipse的设计思想是:一切皆插件。Eclipse核心很小,其它所有功能都以插件的形式附加于Eclipse核心之上。 Eclipse基本内核包括:图形API(SWT/Jface),Java开发环...

mdoo
今天
3
0
SpringBoot源码:启动过程分析(一)

本文主要分析 SpringBoot 的启动过程。 SpringBoot的版本为:2.1.0 release,最新版本。 一.时序图 还是老套路,先把分析过程的时序图摆出来:时序图-SpringBoot2.10启动分析 二.源码分析 首...

Jacktanger
今天
4
0
小白带你认识netty(二)之netty服务端启动(上)

上一章 中的标准netty启动代码中,ServerBootstrap到底是如何启动的呢?这一章我们来瞅下。 server.group(bossGroup, workGroup);server.channel(NioServerSocketChannel.class).optio...

天空小小
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部