`

oracle表复杂查询

阅读更多

说明:在实际应用中经常需要执行复杂的数据统计,经常需要显示多张表的数据。

1)数据分组-max,min,avg,sum,count
?如何显示所有员工中最高工资和最低工资
SQL> select max(sal),min(sal) from emp;

?如何显示所有员工中最高工资的所有者
SQL> select ename,sal from emp where sal=(select max(sal) from emp);

?如何显示所有员工中最高工资的所有者的全部信息
SQL> select * from emp where sal=(select max(sal) from emp);

?如何显示所有员工中最高工资和最低工资的所有者的全部信息
SQL> select * from emp where sal=(select max(sal) from emp) or sal=(select min(sal) from emp);

?显示所有员工的平均工资和工资总和
SQL> select avg(sal),sum(sal) from emp;

?计算共有多少员工
SQL> select count(*) from emp;

?计算共有多少个员工有上级
SQL> select count(mgr) from emp;



拓展要求:
?请显示工资最高的员工的名字,工作岗位
SQL> select ename,job from emp where sal=(select max(sal) from emp);

?请显示工资高于平均工资的员工信息
SQL> select * from emp where sal>(select avg(sal) from emp);

 

1)group by和having子句
group by用于对查询的结果分组统计
having子句用于限制分组显示结果

?如何显示每个部门的平均工资和最高工资
SQL> select avg(sal),max(sal),deptno from emp group by deptno;
意思就是按部门来进行相关的计算

?显示每个部门的每种岗位的平均工资和最低工资
SQL> select avg(sal),min(sal),deptno,job from emp group by deptno,job order by deptno;

?显示每个部门的每个岗位的平均工资、最低工资、最高工资、岗位的人数
SQL> select avg(sal),min(sal),max(sal),count(sal),deptno,job from emp group by deptno,job order by deptno;

?显示平均工资低于2000的部门号和它的平均工资(使用having)
SQL> select avg(sal),deptno from emp group by deptno having avg(sal)<2000;

having的作用就是做二次筛选

?显示岗位有MANAGER的部门和它的最大工资和最小工资
SQL> select avg(sal),min(sal),max(sal),deptno,job from emp group by deptno,job having job='MANAGER';

?显示平均工资高于2000并且有PRESIDENT岗位的部门号
SQL> select deptno from emp group by deptno,job having avg(sal)>2000 and job='PRESIDENT';

0
0
分享到:
评论

相关推荐

    oracle查询表碎片

    ### Oracle查询表碎片知识点详解 在Oracle数据库管理与优化的过程中,了解并处理表碎片是非常重要的一个环节。本文将详细介绍如何通过SQL查询来检测Oracle表的碎片情况,并对给出的SQL查询语句进行深入解析。 ####...

    oracle 复杂查询语句的使用

    总的来说,Oracle的复杂查询功能强大,灵活多样,熟练运用这些技巧可以极大地提高数据查询的效率和准确性,同时降低数据库的维护成本。通过不断地学习和实践,开发者可以更好地理解和应用这些技术,以满足各种复杂的...

    oracle数据库复杂查询处理

    oracle数据库复杂查询处理,其中提供了详细的解决思路,由简入繁,对我们开发人员由其重要

    ORACLE 多表查询与数据修改

    - **熟悉三个或四个表的连接查询**:在实际应用中,我们往往需要从多个表中获取数据以完成复杂的业务逻辑。通过本节的学习,您将能够掌握如何利用Oracle数据库进行多表连接查询,以实现对三个或四个表的有效联合查询...

    oracle复杂相关子查询

    复杂相关子查询 动画版

    oracle开发复杂查询

    Oracle数据库是世界上最流行的数据库管理系统之一,尤其在处理复杂查询方面表现出强大的功能。本文将深入探讨Oracle9i中常用的复杂查询技术,帮助你提升SQL语言的运用水平。 首先,我们来了解查询的基本结构,它由...

    oracle数据库复杂sql语句

    以上示例分别展示了子查询的基本用法、左外连接的实现方式以及字符串连接的应用,这些技术都是构建复杂查询的基础。掌握这些技术不仅能提高开发效率,还能提升数据处理能力,对于从事Oracle数据库相关工作的人员来说...

    Oracle复杂查询实验报告

    Oracle复杂查询实验报告, 用SQL语句实现下列查询。要求:能用嵌套查询的尽量使用嵌套查询。

    oracle4的表查询和基本函数.docx

    Oracle数据库是世界上最流行的数据库管理系统之一,它提供了丰富的功能来处理复杂的查询和数据操作。本文将深入探讨Oracle4中的表查询和基本函数。 首先,我们关注的是基本查询。在Oracle中,查询多表通常涉及到...

    Oracle查询指定表的所有字段名和数据类型SQL

    3. **SQL脚本编写**:在编写复杂的SQL查询或存储过程时,了解目标表的字段类型和约束条件是非常重要的,这有助于避免因类型不匹配或违反约束条件而导致的问题。 总之,通过上述SQL查询语句,我们可以高效地获取...

    oracle查询表的所有列并用逗号隔开

    ### Oracle查询表的所有列并用逗号隔开 #### 核心概念解析 1. **表的元数据**:在Oracle中,可以通过查询特定的数据字典视图来获取表的元数据信息。对于用户所拥有的表,可以使用`USER_TAB_COLUMNS`视图。该视图...

    提高ORACLE数据库的查询统计速度

    - **减少子查询使用**:尽可能将多个子查询合并成一个复杂查询,或者改用其他更高效的方法实现相同功能。 ##### 4. 索引管理 - **建立合适类型的索引**:根据查询需求选择合适的索引类型(如B树索引、位图索引等)...

    Oracle查询用户表工具

    4. **SQL语句测试**:用户可以直接在工具内编写和测试SQL语句,验证查询的正确性,这尤其适用于复杂查询和数据验证。 5. **用户友好界面**:提供直观的图形用户界面,使得操作简便,即使是数据库新手也能轻松上手。...

    oracle数据库表简单查询修改小工具

    "Oracle数据库表简单查询修改小工具"就是为了简化这些操作而设计的辅助软件,旨在提供一个用户友好的界面,使得非专业DBA也能方便地对数据库进行操作。 该工具的核心功能主要包括以下几个方面: 1. **查询功能**:...

    【oracle】oracle查询优化改写

    此外,子查询优化可能包括子查询消除、子查询合并或子查询物化,以减少查询的复杂性和提高执行速度。 优化器是Oracle处理SQL查询的核心组件,它负责选择执行查询的最佳执行计划。Oracle有多种优化器,如RBO(Rule-...

    oracle-----oracle多表查询

    2. 使用WITH语句(公共表表达式,CTE):定义临时的结果集,简化复杂查询。 3. 分组和聚合函数:GROUP BY和COUNT(), SUM(), AVG(), MAX(), MIN()等,用于对数据进行统计分析。 4. 聚合函数与GROUP BY结合的子查询:...

    Oracle表分区详解(优缺点)

    Oracle 表分区是一种高效的数据管理策略,用于处理大数据量的表,以提升查询性能和数据库的可维护性。本文将详细介绍Oracle表分区的概念、作用、优缺点,以及各种类型的分区和操作方法。 首先,理解表空间和分区表...

    通过MSQL通过视图访问ORACLE中的表

    视图是基于一个或多个表的查询结果,可以简化复杂的查询逻辑,并提供一个抽象的接口。 示例: ``` CREATE VIEW my_view AS SELECT * FROM oracle_table WHERE &lt;条件&gt;; ``` 4. **查询和操作视图**:现在,你...

    oracle拼音首字母查询

    Oracle拼音首字母查询是一...总的来说,Oracle拼音首字母查询是一个结合了字符编码、数据库索引和字符串处理技术的复杂过程。正确地实施可以极大地提升中文数据的检索效率,但也需要根据具体需求和资源来权衡解决方案。

    oracle数据库导出表结构到WORD文档

    在开发、文档编写或分享数据库设计时,有时我们需要将Oracle表结构导出到更便于阅读和分享的格式,比如Microsoft Word文档。这个过程可以帮助团队成员更好地理解数据库结构,也可以作为备份或审计的参考。 "oracle...

Global site tag (gtag.js) - Google Analytics