所有查询基于SCOTT用户下的EMPDEPT两张表。
1.查询部门编号是20的员工信息。
select EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
from EMP
where  DEPTNO = 20;

2.查询工作为CLERK的员工的员工号,员工名和部门号
select EMPNO, ENAME, DEPTNO
from EMP
where JOB = 'CLERK';

3.查询奖金COMM高于工资SAL的员工信息。
select EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
from emp
where COMM > SAL;

4.查询奖金COMM高于工资SAL20%的员工信息
select EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
from EMP
where COMM > SAL * 0.2;

5.查询部门编号是10并且工作为MANAGER的员工和部门编号是20并且工作为CLERK的员工信息
select EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
from EMP
where (DEPTNO = 10 AND JOB = 'MANAGER')
OR (DEPTNO = 20 AND JOB = 'CLERK');

6.查询工作不是MANAGER和CLERK,并且工资大于或等于2000的员工信息
SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
FROM EMP
WHERE JOB NOT IN ('MANAGER', 'CLERK')
AND SAL >= 2000;

7. 查询有奖金的员工信息
SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
FROM EMP
WHERE COMM IS NOT NULL AND COMM != 0;

8.查询所有员工的人数和他们的平均工资
SELECT COUNT(*), AVG(SAL)
FROM EMP;

9.查询没有奖金或奖金低于100的员工信息
SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
FROM EMP
WHERE COMM IS NULL OR COMM < 100;

10.查询最近两年入职的员工信息
SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
FROM emp
WHERE MONTHS_BETWEEN(SYSDATE, HIREDATE)/12 <= 2;

11.查询工龄大于或等于10年的员工信息
SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
FROM EMP
WHERE MONTHS_BETWEEN(SYSDATE, HIREDATE)/12 >= 10;
-- select MONTHS_BETWEEN(SYSDATE, HIREDATE)/12 FROM EMP;

12.查询员工信息,要求以首字母大写的方式显示所有员工的姓名
SELECT EMPNO,INITCAP(ENAME), JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
FROM EMP;

13.查询员工名正好为6个字母的员工信息
SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
FROM EMP
WHERE ENAME LIKE '______';

14.查询员工名字中不包含字母S的员工
SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
FROM EMP
WHERE ENAME NOT LIKE '%S%';

15.查询员工姓名的第二个字母为M的员工信息。
SELECT EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO
FROM EMP
WHERE ENAME LIKE '_M%';

16.查询所有员工姓名的前三个字符
SELECT SUBSTR(ENAME, 1, 3)
FROM EMP;

17.查询所有员工的姓名,如果包含字母s,则用S替换
SELECT REPLACE(ENAME, '%s%', '%S%') AS 大写替换小写
FROM EMP;

18.查询所有员工的姓名和入职日期,并按入职日期从先到后进行排序
SELECT ENAME AS 姓名,HIREDATE AS 入职日期
FROM EMP
ORDER BY HIREDATE ASC;

19.查询所有员工的姓名,工作,工资,按工作降序排序,若工作相同,则按工资升序排序
SELECT ENAME, JOB, SAL
FROM EMP
ORDER BY JOB DESC, SAL;

20.显示所有员工的姓名,入职的年份和月份按入职日期所在的月份排序。若月份相同,则按入职的年份排序
SELECT ENAME,EXTRACT(year FROM HIREDATE) AS hireyear,EXTRACT(month FROM HIREDATE) as hiremonth
FROM EMP
ORDER BY EXTRACT(month FROM HIREDATE), EXTRACT(year FROM HIREDATE);

21.查询每个部门中的员工数量,平均工资和平均工作年限
SELECT DEPTNO, COUNT(DEPTNO), AVG(SAL), AVG(MONTHS_BETWEEN(SYSDATE, HIREDATE))
FROM EMP
GROUP BY DEPTNO;

22.查询各个部门的人数及平均工资
SELECT DEPTNO, COUNT(DEPTNO), AVG(SAL)
FROM EMP
GROUP BY DEPTNO;

23.查询各种工作的最低工资,并输出最低工资低于3000的工作名称
SELECT MIN(SAL) AS 最低工资, JOB
FROM EMP
GROUP BY JOB
HAVING MIN(SAL) < 3000;

24.查询各个部门中不同工种的最高工资
select d.dname 部门, e.job 工作,max(e.sal)
from DEPT d join emp e on (d.DEPTNO = e.DEPTNO)
group by d.dname, e.job;

Oracle查询相关相关推荐

  1. oracle查询注意点,oracle查询相关注意点

    单表查询: 1.or 和 and 混合使用 需求:查询业主名称包含'刘'或门牌号包含'5'的,并且地址编号为3的记录SELECT * FROM T_OWNERS WHERE ("NAME&q ...

  2. Oracle 性能相关常用脚本(SQL)

    在缺乏的可视化工具来监控数据库性能的情形下,常用的脚本就派上用场了,下面提供几个关于Oracle性能相关的脚本供大家参考.以下脚本均在Oracle 10g测试通过,Oracle 11g可能要做相应调整 ...

  3. Oracle查询性能优化

    数据库最基本的任务是存储.管理数据,而终端用户唯一能看到的数据库特性就是其性能:数据库以何速度处理某一指定查询的结果,并且将结果返回到用户所用的工具和应用程序.从大多数系统的应用实例来看,查询操作在各 ...

  4. oracle分页查询前10条,Oracle查询前十条记录及分页查询(第5条到第10记录)

    Oracle查询前10条记录及分页查询(第5条到第10记录) 如果你想了解Oracle查询前10条记录的相关实际应用方案的话,你就可以点击以下的文章对其在实际相关操作中的正确用法,有一个更加完善的认识 ...

  5. ORACLE查询原理

    为什么80%的码农都做不了架构师?>>>    导读:Oracle的后台运作原理是什么?我们的一条命令是如何被执行的? Select语句可以说是DBA和数据库开发者在工作中使用最多的 ...

  6. oracle查询一张表的主键,Oracle查询表主键、外键

    Oracle查询表主键.外键 1. 查找表的所有索引(包括索引名,类型,构成列) select t.*,i.index_type from user_ind_columns t,user_indexe ...

  7. oracle adjusting parallel,Oracle 并行相关的初始化参数

    Oracle数据库并行操作,特别是在RAC环境,一定程度上能够提升数据库的性能,所以对相关的初始化参数的了解是必要的,这篇文章将根据实际的案例讨论Oracle数据库的部分并行参数. Oracle数据库 ...

  8. Zabbix如何通过ODBC对接Oracle获取相关数据

    转载来源 :https://mp.weixin.qq.com/s/PNl3c8frgqIYjDnVsQALHA 目 录 什么是ODBC及其主要功能 安装Oracle-instantclient 配置S ...

  9. Oracle序列相关命令

    Oracle序列相关命令 1.Oracle创建序列命令 2.Oracle序列查询命令 3.Oracle序列删除命令 4.Oracle序列实际应用 5.注意事项 1.Oracle创建序列命令 CREAT ...

最新文章

  1. php 位运算与权限,PHP巧妙利用位运算实现网站权限管理的方法
  2. telnet工具_Telnet进入Linux时出现乱码
  3. 深度解析 | 基于DAG的分布式任务调度平台:Maat
  4. Xilinx:让FFmpeg在FPGA上玩的爽
  5. Https原理及流程
  6. C++学习之路 | PTA乙级—— 1020 月饼 (25分)(精简)
  7. python程序设计简明教程知识点总结_Python程序设计简明教程 在线阅读
  8. linux bond配置步骤,七种bond模式说明
  9. 如何彻底搞懂面向 Web 开发者的正则表达式?
  10. 30问提升技术人写作力-第1问作业
  11. python3携程多任务_python3之携程yield及greenlet
  12. CSS快速入门-基本选择器
  13. ⭐App爬虫系列⭐:获取王者荣耀全英雄的名称、类型、热度、胜率、登场率、Ban率
  14. 谷歌浏览器访问端口限制
  15. 广告行业eCPM概念
  16. FireShot在windows2000上安装的问题
  17. Kruskal理解+代码解析
  18. 论软件开发过程RUP及其应用
  19. 洲际酒店集团加速布局粤港澳大湾区,与华侨城酒店集团达成合作
  20. TCP连接,三次握手问题

热门文章

  1. ftp上传文件报错“200 Type set tol.200 PORT command scesful.4MUM np for he Uicde hater eit inte onetmult”
  2. 华清远见重庆中心——Java面向对象阶段技术总结/个人总结
  3. Python计算两个字符串的相似度代码示例
  4. 即插即用,玩转直播,森海塞尔 Profile USB 麦克风兼具易用性与卓越音质
  5. 管窥陌陌的运营改进之道
  6. 【华为OD机试真题】完美走位(python)100%通过率 超详细代码注释 代码解读
  7. 服务器如何安装宝塔面板?宝塔面板安装教程
  8. 华为云DevCloud一枝独秀
  9. PhotonServer-MyGameServer服务器端
  10. 什么是事务以及事务的四种特性