6-3 Oracle 表的管理-表复杂查询

简介: 学习了解6-3 Oracle 表的管理-表复杂查询。

 

文章目录


6 Oracle 表的管理

6.5 oracle表的管理 -表查询(重点)

6.5.2 Oracle表复杂查询

·说明

·数据分组-max,min,avg,sum,count

·扩展要求

·group by和having字句

·对数据分组的总结


6 Oracle 表的管理


6.5 oracle表的管理 -表查询(重点)

6.5.2 Oracle表复杂查询

·说明


在实际应用中经常需要执行复杂的数据统计,经常需要显示多张表的数据,现在我们给大家介绍较为复杂的select语句


·数据分组-max,min,avg,sum,count


如何显示所有员工中最高工资和最低工资

select max(sal) "最高工资",min(sal)"最  高工资" from emp;

显示最高工资以及员工名

select ename,sal from emp where sal=  (select max(sal) from emp);

显示所有员工的平均工资和工资总和

select avg(sal) "平均工资",sum(sal)"工资  总和" from emp;

计算共有多少员工

select count(*) from emp;

·扩展要求


请显示工资最高的员工的名字,工作岗位

select ename,sal,job from emp where  sal=(select max(sal) from emp);

请显示工资高于平均工资的员工信息

select * from emp where sal>(select  avg(sal) from emp);

给那些1987年7月19之前入职并且工资小于平均工资的员工工资上浮百分之八十

select * from emp where sal>(select  avg(sal) from emp);
1


·group by和having字句


group by用于对查询的结果分组统计,


having字句用于限制分组显示结果。


如何显示每个部门的平均工资和最高工资

select avg(sal),max(sal),deptno from  emp group by deptno;

显示每个部门的每种岗位的平均工资和最低 工资

select avg(sal),max(sal),deptno,job  from emp group by deptno,job order by  deptno desc;

显示平均工资低于2000的部门号和它的平均 工资

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

·对数据分组的总结


1.分组函数只能出现在选择列表、having、order by字句中;


2.如果在select语句中同时包含有group by、having、order by那么他们的顺序是 group by,having,order by


3.在选择列中如果有列、表达式和分组函数,那么这些列和表达式必须有一个出现在 group by字句中,否则就会出错


如:

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



相关文章
|
4月前
|
Oracle 安全 关系型数据库
【Oracle】玩转Oracle数据库(六):模式对象管理与安全管理
【Oracle】玩转Oracle数据库(六):模式对象管理与安全管理
69 10
|
4月前
|
SQL Oracle 关系型数据库
【Oracle】玩转Oracle数据库(三):数据库的创建和管理
【Oracle】玩转Oracle数据库(三):数据库的创建和管理
153 5
|
4月前
|
SQL Oracle 关系型数据库
Oracle查询优化-查询只包含数字或字母的数据
【2月更文挑战第4天】【2月更文挑战第10篇】查询只包含数字或字母的数据
573 1
|
4月前
|
消息中间件 关系型数据库 Kafka
实时计算 Flink版产品使用合集之oracle cdc 抽取新增一张表 可以从savepoint恢复吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
2月前
|
SQL Oracle 关系型数据库
关系型数据库Oracle并行查询
【7月更文挑战第12天】
72 15
|
2月前
|
Oracle 关系型数据库 数据处理
|
2月前
|
SQL 监控 Oracle
|
2月前
|
SQL 监控 Oracle
|
3月前
|
SQL Oracle 关系型数据库
实时计算 Flink版产品使用问题之oracle无主键的表支持同步吗如何实现
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
3月前
|
运维 DataWorks Oracle
DataWorks产品使用合集之在标准模式下,当同步Oracle的表或视图时,是否需要在源端的测试和生产环境中都存在要同步的表或视图
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
33 3