USE STUDY
SELECT * from EMP
SELECT * FROM SALGRADE

--1.查询雇员姓名,所在部门编号和名称

SELECT ename,EMP.deptno,DEPT.deptno FROM EMP INNER JOIN DEPT ON DEPT.deptno =EMP.deptno

--2.查询雇员姓名,工作,领导的姓名

SELECT e1.ename,e1.job,e2.ename FROM EMP e1 INNER JOIN EMP e2 on e1.mgr=e2.empno 

--3.查询雇员姓名,工作,领导姓名及部门名称

SELECT e1.ename,e1.job,e2.ename,DEPT.dname FROM DEPT , EMP e1 INNER JOIN EMP e2 ON e1.mgr=e2.empno WHERE DEPT.deptno =e1.deptno

--4.查询雇员姓名,工作,工资及工资等级

SELECT ename,job ,sal,SALGRADE.grade FROM EMP left JOIN SALGRADE ON sal BETWEEN losal AND hisal 

--5.查询雇员姓名,工作,工资及工资等级,要求工资等级显示为
--A B C D E

SELECT EMP.ename,EMP.job,EMP.sal,
CASE SALGRADE.grade
WHEN '' THEN 'E'
WHEN '' THEN 'D'
WHEN '' THEN 'C'
WHEN '' THEN 'B'
WHEN '' THEN 'A'
END AS grade
FROM EMP left join SALGRADE on EMP.sal BETWEEN losal AND hisal

--6.查询雇员姓名,工作,领导的姓名 (左连接 =(+) :以左表为主)

SELECT e1.ename,e1.job,e2.ename FROM EMP e1 LEFT JOIN EMP e2 on e1.mgr=e2.empno

--7.查询雇员姓名,年薪,按年薪从高到低排序

SELECT ename,sal*12 years FROM EMP ORDER BY years DESC 

--8.查询每个部门中工资最高的雇员姓名,工作,工资,部门名称,最后按工资从高到低排序

--SELECT ename,job,sal,DEPT.dname FROM DEPT ,EMP where sal ORDER BY empno
select a.* from emp a,(select deptno,max(sal) sal from emp group by deptno )b where a.deptno=b.deptno and a.sal=b.sal

--9.查询每个部门的雇员数量

SELECT deptno,count(*) from EMP GROUP BY deptno

--10.求出每个部门的平均工资

SELECT deptno ,avg (sal) FROM EMP GROUP BY deptno 

--11.按部门分组,并显示部门的名称,以及每个部门的员工数

SELECT count(*)FROM EMP GROUP BY deptno 

--12.要求显示平均工资大于2000的部门编号和平均工资

SELECT deptno,avg(sal)FROM EMP GROUP BY deptno HAVING avg(sal)>2000 

--13.显示非销售人员工作名称以及从事同一工作雇员的月工资的总和,并且要满足从事同一工作的雇员
--的月工资大于$1500,输出结果按月工资的合计升序排列

SELECT job,sum(sal) FROM EMP WHERE sal>1500 and job <>'Salesman' GROUP BY job ORDER BY sum(sal) 

--14.求出平均工资最高的部门

select top 1 avg(sal),deptno from emp group by deptno ORDER BY avg(sal) DESC 

--15.要求查询出比7654工资要高的全部雇员的信息

select * from EMP WHERE sal>(SELECT sal FROM EMP where empno=7654)

--要求查询工资比7654高,与7788从事相同工作的全部雇员信息

select * from EMP WHERE sal>(SELECT sal FROM EMP where empno=7654)AND
job =(SELECT job FROM EMP WHERE empno =7788)

--16.查询出工资最低的雇员姓名,工作,工资

SELECT ename,job,sal FROM EMP WHERE sal =(SELECT min(sal)FROM EMP)

SQL复杂查询(子查询)的更多相关文章

  1. oracle 基础SQL语句 多表查询 子查询 分页查询 合并查询 分组查询 group by having order by

    select语句学习 . 创建表 create table user(user varchar2(20), id int); . 查看执行某条命令花费的时间 set timing on: . 查看表的 ...

  2. SQL Server 之 子查询与嵌套查询

    当由where子句指定的搜索条件指向另一张表时,就需要使用子查询或嵌套查询. 1 子查询 子查询是一个嵌套在select.insert.update或delete语句或其他子查询中的查询.任何允许使用 ...

  3. 【数据库】SQL经典面试题 - 数据库查询 - 子查询应用二

    上节课我们通过子查询,完成了查询的最高分学生的需求,今天我们来学习子查询的分类,以及通过子查询来完成工作中经常遇到一些个性化需求. 子查询概念: 一个SELECT语句嵌套在另一个SELECT语句中,子 ...

  4. ylb: SQL表的高级查询-子查询

    ylbtech-SQL Server: SQL Server- SQL表的高级查询-子查询 SQL Server 表的高级查询-子查询. 1,ylb:表的高级查询-子查询返回顶部 --======== ...

  5. Python-select 关键字 多表查询 子查询

    sql 最核心的查询语句!!!! 增删改 单表查询 select语句的完整写法 关键字的书写顺序 执行顺序 多表查询 笛卡尔积 内连接 左外连接 右外连接 全外连接 通过合并左外连接和右外连接 子查询 ...

  6. MYSQL 查询方法 统计查询 链接查询 子查询

    mysql表格查询方法: 查询: 1.简单查询 select * from Info --查所有数据select Code,Name from Info --查指定列的数据select Code as ...

  7. 【知识库】-数据库_MySQL之基本数据查询:子查询、分组查询、模糊查询

    简书作者:seay 文章出处: 关系数据库SQL之基本数据查询:子查询.分组查询.模糊查询 回顾:[知识库]-数据库_MySQL常用SQL语句语法大全示例 Learn [已经过测试校验] 一.简单查询 ...

  8. MySQL的查询,子查询,联结查询,联合查询

    MySQL的查询,子查询,联结查询,联合查询 一.mysql查询的五种子句where(条件查询).having(筛选).group by(分组).order by(排序).limit(限制结果数) 二 ...

  9. Oracle的查询-子查询

    --子查询 --子查询返回一个值 --查询出工资和scott一样的员工信息 select * from emp where sal in (select sal from emp where enam ...

  10. coding++:mybatis 嵌套查询子查询column传多个参数描述

    mybatis 嵌套查询子查询column传多个参数如下: 2.代码示例 备注:注意,相同颜色的单词都是有关联的 <resultMap id="blogResult" typ ...

随机推荐

  1. timeout Timeout时间已到.在操作完成之前超时时间已过或服务器未响应

    Timeout时间已到.在操作完成之前超时时间已过或服务器未响应 问题 在使用asp.net开发的应用程序查询数据的时候,遇到页面请求时间过长且返回"Timeout时间已到.在操作完成之间超 ...

  2. php预定义常量&变量

    PHP中可以使用预定义常量获取PHP中的信息,常用的预定义常量如下表所示. 常量名 功能  _FILE_ 默认常量,PHP程序文件名 _LINE_ 默认常量,PHP程序行数  PHP_VERSION ...

  3. Android Studio无法关联Api23源码-提示Souces for android api 23 platform not found

    最近升级了As,然后忽然就关联不上源码了,很不方便,找个Activity的源码都只有outline没有解释,还提示这个错误: Decompiled .class file, bytecode vers ...

  4. JQuery(二)——简单动画效果

    上一篇博客总结了JQuery的一些基本知识,这篇博客重点从JQuery能够制造各种各样的网页效果方面来进行总结.总结一些常见的常用的基本效果的必备方法.从隐藏显示,淡入淡出,滑动,动画等几个方面来简单 ...

  5. css3实现图片遮罩效果鼠标hover以后出现文字

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  6. DropdownList的处理总结

    创建一: List<SelectListItem> items = new List<SelectListItem>() { new SelectListItem(){Text ...

  7. 把WCF服务部署服务器IIS异常(详细:处理程序“svc-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”)

    详细:处理程序“svc-Integrated”在其模块列表中有一个错误模块“ManagedPipelineHandler” 原因: vs2010默认的是4.0框架,4.0的框架是独立的CLR,和2.0 ...

  8. 使用file_get_content系列函数和使用curl系列函数采集图片的性能对比

    由于公司的一个汽车网站的后台的汽车内容都是主要是来自与汽车之家的,编辑的同事们必须天天手动去对着汽车之家来添加汽车,实在是太蛋疼了.于是乎,为了改变这种状况,作为一个开发码农,我的任务就来了...那就 ...

  9. android中利用view画出一条竖线

    在android中有时候需要通过线条来分割控件.最常见的情形就是在底部选项卡的多个button中间,通过加入一条竖线加以区分或者是在头部导航添加 竖线,将返回键和其他内容区分开来.一般会通过image ...

  10. 在ubuntu10.0.4下更新git

    今天想到要在ubuntu10.0.4下下载android的源码学习一下.源码下载用到了git.以前安装过git以为应该没什么问题的,没想到报了 “fatal: git 1.7.2 or later r ...