emp表查询练习

1 查询emp表的全部记录

  Select * from emp;

2 查询出每个雇员的编号、姓名、基本工资

  Select empno,ename,sal from emp;

3 查询出每个雇员的职位并消除重复行

  Select distinct job from emp;

4 查询出每个雇员的姓名、职位

  Select ename,job from emp;

5 要求显示每一个雇员的姓名、职位、基本年薪,并将年薪命名为income

  Select ename,job,sal*12 as income from emp;

6 由于公司的福利很高,每个月都有200元的饭食补助以及100元车费补贴,这个时候的年薪

  Select ename,job,(sal+300)*12 as年薪 from emp;

7 要求现在的数据库按照如下的格式显示:“雇员编号是:7369的雇员姓名是:SMITH,基本工资是:800,职位是:CLERK!”

  Select ‘雇员编号是: ’||empno ||’ 的雇员姓名是: ’|| ename || ‘,基本工资是: ’|| sal ||’,职位是: ’|| job || ‘!’ from emp;

8 要求查询出基本工资高于1500的所有雇员信息

  Select * from emp where sal>150

9 查询出所有职位是CLERK的雇员信息  

  Select * from emp where job=’CLERK’;

10 查询工资在1500~3000之间的全部雇员信息

  SELECT * FROM EMP WHERE SAL BETWEENT 1500 AND 3000;

  SELECT * FROM EMP WHERE SAL>=1500 AND SAL<=3000;

11 查询出职位是CLERK,或者是SALESMAN的全部信息

  SELECT * FROM EMP WHERE JOB=’CLERK’ OR JOB=’SALESMAN’;

  SELECT * FROM EMP WHERE JOB IN(‘CLERK’,’SALESMAN’);

12 查询出职位是CLERK,或者是SALESMAN的全部信息,并且要求这些雇员的工资大于1200

  SELECT * FROM EMP WHERE (JOB=’CLERK’ OR JOB=’SALESMAN’) AND SAL>1200;

  SELECT * FROM EMP WHERE JOB IN(‘CLERK’,’SALESMAN’) AND SAL>1200;

13 查询所有不是CLERK的雇员信息

  SELECT * FROM EMP WHERE JOB<>’CLERK’;

  SELECT * FROM EMP WHERE JOB!=’CLERK’;

14 要求查询在1981年雇佣的全部雇员信息(使用between and)

  SELECT * FROM EMP WHERE HIREDATE BETWEEN ’01-1月-81’ AND ’31-12月-81’;

  SELECT * FROM EMP WHERE HIREDATE BETWEEN TO_DATE(‘1981-01-01’,’YYYY-MM-DD’) AND TO_DATE(‘1981-12-31’,’YYYY-MM-DD’);

15 要求查询出所有的雇员信息,按照工资由高到低排序,如果工资相同,则按照雇佣日期由早到晚排序

  SELECT * FROM EMP ORDER BY SAL DESC,HIREDATE ASC;

16 找出奖金高于薪金的员工。

  SELECT * FROM EMP WHERE NVL(COMM,0)>SAL;

17 找出奖金高于薪金的60%的员工。

  SELECT * FROM EMP WHERE NVL(COMM,0)>SAL*0.6;

18 找出部门10中所有经理(MANAGER)和部门20中所有办事员(CLERK)的详细资料。

  SELECT * FROM EMP WHERE DEPTNO=10 AND JOB=’MANAGER’ OR DEPTNO=20 AND JOB=’CLERK’;

19 找出部门10中所有经理(MANAGER),部门20中所有办事员(CLERK),既不是经理又不是办事员但其薪金大于或等于2000的所有员工的详细资料。

  SELECT * FROM EMP WHERE DEPTNO=10 AND JOB=’MANAGER’ OR DEPTNO=20 AND JOB=’CLERK’ OR JOB NOT IN(‘MANAGER’,’CLERK’) AND SAL>=2000;

20 找出收取奖金的员工的不同工作。

SELECT DISTINCT JOB FROM EMP WHERE COMM IS NOT NULL;
SELECT DISTINCT JOB FROM EMP WHERE NVL(COMM,0)<>0;

21 找出没有奖金或奖金低于100的员工。

SELECT * FROM EMP WHERE COMM IS NULL OR COMM<100;

22 查询岗位(job)为MANAGER的员工的数量

SELECT JOB,COUNT(*) FROM EMP WHERE JOB=’MANAGER’ GROUP BY JOB;

SELECT COUNT(*) FROM EMP WHERE JOB=’MANAGER’;

SELECT COUNT(JOB) FROM EMP WHERE JOB=’MANAGER’;

23 统计各部门下工资大于500的员工的平均工资

SELECT DEPTNO,AVG(SAL) FROM EMP WHERE SAL>500 GROUP BY DEPTN

24 统计平均工资大于500的部门

SELECT DEPTNO,AVG(SAL) FROM EMP GROUP BY DEPTNO HAVING AVG(SAL)>500

25 算出部门30中得到最多奖金的员工奖金

SELECT MAX(COMM) FROM EMP WHERE DEPTNO=30;

SELECT DEPTNO,MAX(COMM) FROM EMP WHERE DEPTNO=30 GROUP BY DEPTNO;

26 算出每个职位的员工数和最低工资

SELECT JOB,COUNT(JOB),MIN(SAL) FROM EMP GROUP BY JOB;

oracle习题-emp表查询练习的更多相关文章

  1. Oracle笔记 多表查询

    Oracle笔记  多表查询   本次预计讲解的知识点 1. 多表查询的操作.限制.笛卡尔积的问题: 2. 统计函数及分组统计的操作: 3. 子查询的操作,并且结合限定查询.数据排序.多表查询.统计查 ...

  2. Oracle笔记(1)--emp表查询(1)

    (1)截取函数--TRUNC() 的用法 SELECT  TRUNC(789.652) 截取小数, TRUNC(789.652,2) 截取两位小数, TRUNC(789.652,-2) 取整 FROM ...

  3. Oracle数据库多表查询,子查询,集合运算

    记得自己要敲o~~~ select * from bonus; select * from salgrade; from dual; --笛卡尔积:两张表的乘积 select * from emp,d ...

  4. oracle 事务多表查询以及额外的用处

    /* 以下代码是对emp表进行显示宽度设置*/ col empno for 9999;col ename for a10;col job for a10;col mgr for 9999;col hi ...

  5. Oracle的多表查询

    多表查询概念: 所谓多表查询,又称表联合查询,即一条语句涉及到的表有多张,数据通过特定的连接进行联合显示. 基本语法: select column_name,.... from table1,tabl ...

  6. oracle SQL多表查询

    SQL多表查询 1.集合理论 1.1 什么是集合 具有某种特定性质的事物的总体. 集合的特性:无序性.互异性.确定性. 一个集合可以小到从一个表中取出一行中的一列.              1 ro ...

  7. Oracle查询优化-多表查询

    --合并结果集 --1.union all UNION ALL--单纯合并 ; --2.union UNION --将重复结果集合并 ; --------------使用命令窗口执行,查看union与 ...

  8. oracle笔记2-多表查询和子查询

    --查询出当前用户下的所有表 select table_name from user_tables; --执行顺序原则:  from  where group by  having   select  ...

  9. Oracle之多表查询

    -多表查询 1.交叉连接 select * from t_class for update; select * from t_student for update; select for update ...

随机推荐

  1. 为什么Java中的String是设计成不可变的?(Why String is immutable in java)

    There are many reasons due to the string class has been made immutable in Java. These reasons in vie ...

  2. 菜鸟nginx源码剖析数据结构篇(十一) 共享内存ngx_shm_t[转]

    菜鸟nginx源码剖析数据结构篇(十一) 共享内存ngx_shm_t Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blog.csdn ...

  3. VS2010-MFC(VS2010应用程序工程中文件的组成结构)

    转自:http://www.jizhuomi.com/software/143.html 用应用程序向导生成框架程序后,我们可以在之前设置的Location下看到以解决方案名命名的文件夹,此文件夹中包 ...

  4. PAT甲级——A1007 Maximum Subsequence Sum

    Given a sequence of K integers { N​1​​, N​2​​, ..., N​K​​ }. A continuous subsequence is defined to ...

  5. <随便写>创建文件批处理文件

    创建一个text文档 写入想写的程序 将后缀改为bat 例如创建一个文件夹: 双击运行bat文件就可以创建文件夹 运行结果: 需要批量处理,就用for循环生成代码,粘贴上去就行了

  6. vue-cli# 项目结构

    引自:https://segmentfault.com/a/1190000007880723 http://blog.csdn.net/hongchh/article/details/55113751 ...

  7. PLSQL远程访问Oracle数据库配置

    PLSQL远程访问Oracle数据库的配置 监听器(LISTENER) :监听器是Oracle基于服务器端的一种网络服务,主要用于监听客户端向数据库服务器端提出的连接请求.既然是基于服务器端的服务,那 ...

  8. Nginx是什么?

    Nginx是什么? Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器.一直纳闷这个X是怎么来 ...

  9. Diff- Linux必学的60个命令

    1.作用 diff命令用于两个文件之间的比较,并指出两者的不同,它的使用权限是所有用户. 2.格式 diff [options] 源文件 目标文件 3.[options]主要参数 -a:将所有文件当作 ...

  10. Luogu P1401 城市(二分+网络流)

    P1401 城市 题意 题目描述 N(2<=n<=200)个城市,M(1<=m<=40000)条无向边,你要找T(1<=T<=200)条从城市1到城市N的路,使得最 ...