1.写一个查询显示与 Zlotkey 的 在同一部门的雇员的 last name和 hire date,结果中不包括 Zlotkey

--1.写一个查询显示与 Zlotkey 的 在同一部门的雇员的 last name和 hire date,结果中不包括 Zlotkey
select e.department_id from employees e where e.last_name='Zlotkey'; select e.last_name,e.hire_date
from employees e
where e.last_name <> 'Zlotkey'
and e.department_id=(select e.department_id from employees e where e.last_name='Zlotkey');

2.查询每个部门的平均薪水等级

--查询每个部门的平均薪水等级
select e.avgs,gra.gra,e.did
from job_grades gra,(select avg(e.salary) as avgs,e.department_id as did from employees e where e.department_id is not null group by e.department_id) e
where e.avgs between gra.lowest_sal and gra.highest_sal;

3.创建一个查询显示所有其薪水高于平均薪水的雇员的雇员号和名字。按薪水的升序排序。

--创建一个查询显示所有其薪水高于平均薪水的雇员的雇员号和名字。按薪水的升序排序。
select avg(e.salary) from employees e; select e.salary,e.last_name,e.employee_id
from employees e
where e.salary>(select avg(e.salary) from employees e);

4.写一个查询显示所有工作在有任一雇员的名字中包含一个u的部门的雇员的雇员号和名字。

--写一个查询显示所有工作在有任一雇员的名字中包含一个u的部门的雇员的雇员号和名字。
select e.department_id from employees e where e.last_name like '%u%'; select e.last_name,e.employee_id
from employees e
where e.department_id in(select e.department_id from employees e where e.last_name like '%u%');

5.显示所有部门地点号 (department location ID )是1700的雇员的 last name 、department number和 job ID 。

--显示所有部门地点号 (department location ID )是1700的雇员的 last name 、department number和 job ID 。
select d.department_id from departments d where d.location_id=1700; select e.last_name,e.department_id,e.job_id
from employees e
where e.department_id in(select d.department_id from departments d where d.location_id=1700);

6.显示每个向 King 报告的雇员的名字和薪水.

--显示每个向 King 报告的雇员的名字和薪水.
select e.employee_id from employees e where e.last_name='King'; select e.last_name,e.salary
from employees e
where e.manager_id in(select e.employee_id from employees e where e.last_name='King');

7.显 示 在 Executive 部 门 的 每 个 雇 员 的 department,number 、last name 和 job ID 。

--显 示 在 Executive 部 门 的 每 个 雇 员 的 department,number 、last name 和 job ID 。
select d.department_id from departments d where d.department_name='Executive'; select e.employee_id,e.last_name,e.job_id
from employees e
where e.department_id=(select d.department_id from departments d where d.department_name='Executive');

8.查询显示所有收入高于平均薪水并且工作在有任一雇员的名个字中带有一个u的部门的雇员的 employee numbers、last_names 和salaries 。

--查询显示所有收入高于平均薪水并且工作在有任一雇员的名个字中带有一个u的部门的雇员的 employee numbers、last_names 和salaries 。
select avg(e.salary) from employees e;
select e.department_id from employees e where e.last_name like '%u%'; select es.employee_id,es.last_name,es.salary
from employees es
where es.salary>(select avg(e.salary) from employees e)
and es.department_id in(select e.department_id from employees e where e.last_name like '%u%');

8.显示那些 job ID 与雇员 141 相同的雇员的名字与 job ID。

--显示那些 job ID 与雇员 141 相同的雇员的名字与 job ID。
select e.job_id from employees e where e.employee_id=141; select e.last_name,e.job_id
from employees e
where e.job_id=(select e.job_id from employees e where e.employee_id=141);

9.显示 job ID与雇员 141 相同,并且薪水高于雇员 143 的那些雇员。

--显示 job ID与雇员 141 相同,并且薪水高于雇员 143 的那些雇员。
select e.job_id from employees e where e.employee_id=141
select es.salary from employees es where es.employee_id=143; select ee.salary,ee.last_name
from employees ee
where ee.job_id=(select e.job_id from employees e where e.employee_id=141)
and ee.salary>(select es.salary from employees es where es.employee_id=143);

10.显示所有其最低薪水大于 部门 50 的最低薪水的部门号和最低薪水。

--显示所有其最低薪水大于 部门 50 的最低薪水的部门号和最低薪水。
select min(e.salary) from employees e where e.department_id=50; select min(ee.salary),ee.department_id
from employees ee
where ee.department_id is not null
group by ee.department_id
having min(ee.salary)>(select min(e.salary) from employees e where e.department_id=50)
order by ee.department_id;

11.显示工作岗位不是 IT_PROG 的雇员,并且这些雇员的的薪水少于 IT_PROG 工作岗位的雇员的 ID、名字、工作岗位和薪水。

--显示工作岗位不是 IT_PROG 的雇员,并且这些雇员的的薪水少于 IT_PROG 工作岗位的雇员的 ID、名字、工作岗位和薪水。

select e.salary from employees e where e.job_id='IT_PROG';

select e.employee_id,e.last_name,e.job_id,e.salary
from employees e
where e.job_id <> 'IT_PROG'
and e.salary<any(select e.salary from employees e where e.job_id='IT_PROG')

<ALL 意思是小于最小值。>ALL 意思是大于最大值。

ANY 与 ALL 的区别:

ANY: >ANY 表示至少大于一个值,即大于最小值。

ALL: >ALL 表示大于每一个值,既大于最大值。

数据库Oracle的子查询练习的更多相关文章

  1. Oracle 之——子查询 DDL DML 集合 及其他数据对象

    Oracle 学习笔记(二) 知识概要: 1.子查询 2.集合操作 3.DML语句操作 4.其他数据库对象 1.子查询 查询工资比SCOTT高的员工信息 1  select * 2  from emp ...

  2. 数据库基础(子查询练习、链接查询(join on 、union)及其练习)

    子查询练习一:查询销售部里的年龄大于35岁的人的所有信息 练习二:将haha表中部门的所有数字代码转换为bumen表中的字符串显示 练习三:将haha表中部门的所有数字代码转换为bumen表中的字符串 ...

  3. oracle之子查询、创建用户、创建表、约束

      子查询                                    子查询可以分为单行子查询和多行子查询   单行子查询           [1] 将一个查询的结果作为另外一个查询的条 ...

  4. Oracle 通过子查询批量添加、修改表数据

    1.通过查询快速创建表 create table test1(id,job,mgr,sal) as () ) ---这是一个分页查询 ok,表创建成功 2.通过查询快速创建视图 create or r ...

  5. Oracle【子查询】

    Oracle子查询:当一个查询依赖于另外一个查询的结果的时候,就需要使用子查询.单行子查询 :筛选条件不明确,需要执行一次查询且查询结果只有一个字段且字段值只有一个.注意:where子句中允许出现查询 ...

  6. Oracle之子查询:Top-N问题

    学习了SQL子查询,遇到个Top-N问题,即:加入有张工资表(这里使用Oracle SCOTT用户的emp表),需要查找工资最高的3个员工信息,以下列格式输出: 乍眼一看,这很简单啊,对sal进行排序 ...

  7. MySQL数据库update更新子查询

    比如: ? 1 2 3 4 UPDATE test.tb_vobile a set a.name = '111 ' WHERE a.id = (select max(id) id from test. ...

  8. Oracle Day04 子查询

    1.子查询解决什么问题: 当一个简单的查询查询不到结果的时候,可以使用子查询来丰富查询的条件以达到显示结果的目的. 子查询的格式: 用一个小括号包含,然后在里面写sql语句2.子查询的注意事项: 1) ...

  9. MySQL数据库(11)----使用子查询实现多表查询

    子查询指的是用括号括起来,并嵌入另一条语句里的那条 SELECT 语句.下面有一个示例,它实现的是找出与考试类别('T')相对应的所有考试事件行的 ID,然后利用它们来查找那些考试的成绩: SELEC ...

随机推荐

  1. canvas绘制工作流之绘制节点

    上一篇我们介绍了canvas绘制工作流的大概步骤,接下来会有系列文章细致的介绍怎么用canvas绘制工作流:这篇文章主要介绍用canvas绘制流程节点. 绘制前我们需要先准备一张节点图片,例如::好了 ...

  2. vue的路由安全验证

    在传统的网页中: view层是由后端控制的,用户的请求到达后端的控制器中,只有当安安全全没有丝毫异常的情况下,后端才会将完成数据的渲染,返回给前端视图 前后端分离的项目: view层的切换权,转交给了 ...

  3. SD-WAN 本地策略与中心策略配置(三)

    目录 1. Localized Policy配置 2. Centralized Policy配置 3. Application Route and Traffice Policy 1. Localiz ...

  4. 网站搭建 - 虚拟机的安装 - Linux 本地网站搭建第一步

    搭建网站-1-域名申请参见公众号 生物信息系统(swxxxt) 搭建网站-域名绑定见稍后的一章,就是直接点解析,然后就完事了,可以不看的. 首先准备材料: 先装虚拟机,会要求重启,那就重启吧,安装界面 ...

  5. Reporting service个人使用经验

    (此文章是从自己写的Word文档里复制过来的,图没有了,文字也有些乱,凑合看吧) 部署环境 Windows server 2012 R2 软件环境 安装完整的sqlsever2012,IIS服务 需要 ...

  6. [ASP.NET Core 3框架揭秘] 文件系统[2]:总体设计

    在<抽象的"文件系统">中,我们通过几个简单的实例演示从编程的角度对文件系统做了初步的体验,接下来我们继续从设计的角度来进一步认识它.这个抽象的文件系统以目录的形式来组 ...

  7. 张孝祥java高新技术 --- jkd1.5 新特性

    1. 静态导入 import static java.lang.Math.max; 2. 可变参数 3. 自动装箱,拆箱 4. 枚举

  8. 力扣(LeetCode)2的幂 个人题解

    给定一个整数,编写一个函数来判断它是否是 2 的幂次方. 示例 1: 输入: 1 输出: true 解释: 20 = 1 示例 2: 输入: 16 输出: true 解释: 24 = 16 示这题是考 ...

  9. linux目录数

    FHS Filesystem Hierarchy Standard(文件系统层次化标准,[ˈhaɪərɑ:rki] 等级制度)的缩写,多数Linux版本采用这种文件组织形式,类似于Windows操作系 ...

  10. SQLServer2008R2(百度网盘)下载与安装教程

    很久没有安装过这个了,今天安装有点生疏了,这里记录一下分享 分为三块块1.下载地址,2.安装图解  ,3.安装失败问题 1.sqlserver 2008 r2 百度下载地址链接:下载 cn_sql_s ...