1.GROUP BY子句

在SELECT 列表中所有未包含在组函数中的列都应该包含在GROUP BY 子句中.

如下:

SELECT deptno,AVG(sal) from emp GROUP BY deptno;(deptno为没有包含在组函数的列)

以下查询是错误的:

SELECT a,b,c,AVG(sal) from emp GROUP BY a,b;(c没有写在group by 后面)

===========================================================================================

多个列的分组:先按照第一个列分组,如果相同,再第二个列分组,以此类推

===========================================================================================

2.过滤分组:HAVING 子句

使用HAVING过滤分组

1.行已经被分组;

2.使用了组函数;

如:

select deptno,avg(sal) from emp group by deptno having avg(sal)>2000;

==========================================================================================

where 后面不能使用多行函数;

==========================================================================================

GROUP BY语句的增强(主要作用:用来做报表)

select deptno,job,sum(sal)  from emp group by deptno,job
+

select deptno,sum(sal) from emp group by deptno

+

selelct sum(sal) from emp

====

select deptno,job,sum(sal) from emp group by rollup(deptno,job)

查询出来类似于报表形式

===========================================================================================

抽象:

group by rollup(a,b)

=

group by a,b

+

group by a

+

没有group by

oracle数据库GROUP BY 子句的更多相关文章

  1. Oracle中group by用法

    Oracle中group by用法 在select 语句中可以使用group by 子句将行划分成较小的组,一旦使用分组后select操作的对象变为各个分组后的数据,使用聚组函数返回的是每一个组的汇总 ...

  2. Oracle 中关于 Group By 子句与多行函数嵌套搭配使用的注意事项

    目录 你需要知道的 啥叫单行函数 啥叫多行函数 如何理解这个概念 Group by 子句使用规则 看一道 071 考题 你需要知道的 提到 Group by 子句,你需要先理解一个东西:函数的分类.提 ...

  3. 优化 : Oracle数据库Where条件执行顺序 及Where子句的条件顺序对性能的影响

    .Oracle数据库Where条件执行顺序: 由于SQL优化起来比较复杂,并且还会受环境限制,在开发过程中,写SQL必须必须要遵循以下几点的原则: 1.ORACLE采用自下而上的顺序解析WHERE子句 ...

  4. Oracle 数据库基础学习 (四) group by的使用

      group by分组查询 示例:要求查询出每个部门的编号,人数,以及最高和最低工资  select deptno, count(empno), max(sal), min(sal) from em ...

  5. Oracle 数据库语句大全

    Oracle数据库语句大全 ORACLE支持五种类型的完整性约束 NOT NULL (非空)--防止NULL值进入指定的列,在单列基础上定义,默认情况下,ORACLE允许在任何列中有NULL值. CH ...

  6. Oracle数据库基础知识

    oracle数据库plsql developer   目录(?)[-] 一     SQL基础知识 创建删除数据库 创建删除修改表 添加修改删除列 oracle cascade用法 添加删除约束主键外 ...

  7. oracle数据库从入门到精通

    oracle产品线围绕企业开发平台的企业开发平台四大组件:unix,weblogic中间件,java编程语言,oracle数据库oracle 开发主要分两类数据库管理:dba数据库编程:分两部分   ...

  8. 【转】oracle数据库开发的一些经验积累

    1.不安装Oracle客户连接Oracle 8的方法  请将以下文件拷贝到运行文件所在目录 一.ODBC动态库 : ctl3d32.dll msvcrt40.dll odbc16gt.dll odbc ...

  9. Oracle数据库初级学习 2

    今天我们介绍Oracle数据库中剩余的查询方法,今天的查询方法会比昨天的更为复杂一些(PS:我也是个初学者,请见谅..). 一.分组函数 分组函数是为了区分同一个表中的不同数据而建立,其关键字为GRO ...

随机推荐

  1. django_视图相关

    使用通用视图(返回静态页面) from django.conf.urls.defaults import * from django.views.generic.simple import direc ...

  2. 使用HSI配置系统时钟

    这里我就直接粘代码了.很简单.上节理解了 这也就能简单了. void HSI_SetSysClk( uint32_t RCC_PLLMul_x ) { __IO uint32_t HSIStatus ...

  3. 【解决方法】You seem to have the current working directory in your LD_LIBRARY_PATH environment variable.

    参考地址:https://blog.csdn.net/qq_24755999/article/details/78722788 You seem to have the current working ...

  4. 线段树 面积并问题 hdu 1255 1542

    重点整理面积并的思想 以及PushUp的及时更新 还有就是cover的实现 以及建树每个节点存的信息(每个节点存的是一个线段的信息) http://www.tuicool.com/articles/6 ...

  5. HTTP协议探究(五):H2中一些重要的概念

    一 复习与目标 1 复习 简单密码学.对称加密与非对称加密 数字签名.数字证书 SSL/TLS HTTPS = HTTP + SSL/TLS,SSL/TLS为HTTP提供了保密性.完整性和鉴别性 2 ...

  6. SOLID Principles

    Intention: more understandable, easier to maintain and easier to extend.(通过良好的设计使得代码easy and simple, ...

  7. centos从安装到环境配置

    1.安装centos6.5    http://jingyan.baidu.com/article/25648fc1a235c99191fd0008.html 2.配置网络ip   http://ji ...

  8. bootstrap 模态框在iphone微信内点击无效

    <a  data-toggle="modal" data-target="#wwww" href=""  οnclick=" ...

  9. FlowPortal BPM 明细表中新添加的行一直排在最后的问题

    明细表中的数据提交过之后再编辑时,添加的行不管在第几行添加都显示在最后一行的问题 Solution:明细表的数据库表中加字段OrderIndex,设为必填,系统会自动排序

  10. CAS客户端认证流程

    CAS登陆流程 Step 1:浏览器向CAS客户端发起登陆请求,CAS客户端生成“登陆URL”,并把浏览器重定向到该URL 登陆URL: https://${cas-server-host}:${ca ...