2018/5/31 oracle数据库面试笔试试题总结
http://www.yjbys.com/qiuzhizhinan/show-308759.html 1/4
Oracle数据库
1.基础测试
选择在部门 30 中员工的所有信息
Select * from emp where deptno=30;
列出职位为(MANAGER)的员工的编号,姓名
Select empno,ename from emp where job = ?Manager ?;
找出奖金高于工资的员工
Select * from emp where comm>sal;
找出每个员工奖金和工资的总和
Select sal+comm,ename from emp;
找出部门 10 中的经理(MANAGER)和部门 20 中的普通员工(CLERK)
Select * from emp where (deptno=10 and job=?MANAGER?) or (deptno=20 and job=?
CLERK?);
找出部门 10 中既不是经理也不是普通员工,而且工资大于等于 2000 的员工 Select * from
emp where deptno=10 and job not in(?MANAGER?,?CLERK) ? and sal>=2000;
找出有奖金的员工的不同工作
Select distinct job from emp where comm is not null and comm>0
找出没有奖金或者奖金低于 500 的员工
Select * from emp where comm<500 or comm is null;
显示雇员姓名,根据其服务年限,将最老的雇员排在最前面
select ename from emp order by hiredate ;
2.函数测试
找出每个月倒数第三天受雇的员工(如:2009-5-29)
select * from emp where last_day(hiredate)-2=hiredate;
找出 25 年前雇的员工
2018/5/31 oracle数据库面试笔试试题总结
http://www.yjbys.com/qiuzhizhinan/show-308759.html 2/4
select * from emp where hiredate<=add_months(sysdate,-25*12);< p="">
所有员工名字前加上 Dear ,并且名字首字母大写
select Dear || initcap(ename) from emp;
找出姓名为 5 个字母的员工
select * from emp where length(ename)=5;
找出姓名中不带 R 这个字母的员工
select * from emp where ename not like %R%;
显示所有员工的姓名的第一个字
select substr(ename,0,1) from emp;
显示所有员工,按名字降序排列,若相同,则按工资升序排序
假设一个月为 30 天,找出所有员工的日薪,不计小数
找到 2 月份受雇的员工
select * from emp where to_hiredate,fmmm)=2;

3.分组函数
分组统计各部门下工资>500 的员工的平均工资、
Select avg(sal) from emp where sal>500 group by deptno ;
统计各部门下平均工资大于 500 的部门
select deptno,avg(sal) from emp group by deptno having avg(sal)>500 ;

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

Select max(comm) from emp where deptno = 30 ;
算出部门 30 中得到最多奖金的员工姓名
select ename from emp where comm = (select max(comm) from emp where deptno=30);
算出每个职位的员工数和最低工资
Select job,min(sal),count(*) from emp group by job;
列出员工表中每个部门的员工数,和部门 no
2018/5/31 oracle数据库面试笔试试题总结
http://www.yjbys.com/qiuzhizhinan/show-308759.html 3/4
Select count(*),deptno from emp group by deptno;
得到工资大于自己部门平均工资的员工信息
select * from emp e1,(select deptno,avg(sal) as avgsal from emp group by deptno) e2
where e1.deptno=e2.deptno and e1.sal > e2.avgsal;
分组统计每个部门下,每种职位的平均奖金(也要算没奖金的人)和总工资(包括奖金) select
deptno,job,avg(nvl(comm,0)),sum(sal+nvl(comm,0)) from emp group by deptno,job;
4.多表联查
列出员工表中每个部门的员工数,和部门 no
select deptno,count(*) from emp group by deptno;
列出员工表中每个部门的员工数(员工数必须大于 3) ,和部门名称
select d.* ,ed.cou from dept d,(select deptno,count(*) cou from emp group by deptno
having count(*)>3) ed where d.deptno=ed.deptno;
找出工资比 jones 多的员工
select * from emp where sal>=(select sal from emp where
lower(ename)=jones);
列出所有员工的姓名和其上级的姓名
select e1.ename as lower ,e2.ename as upper from emp e1,emp e2 where e1.mgr
= e2.empno;
select e1.ename as lower ,e2.ename as upper from emp e1,emp e2 where e1.mgr =
e2.empno(+);

以职位分组,找出平均工资最高的两种职位
Select * from ( select avg(sal) from emp order by job desc ) where rownum<3; 20=""
select="" d.dname="" from="" emp="" dept="" d="" where="" and="" e.sal="">(select
max(sal) from
emp where deptno=20) and e.deptno=d.deptno
得到平均工资大于 2000 的工作职种
2018/5/31 oracle数据库面试笔试试题总结
http://www.yjbys.com/qiuzhizhinan/show-308759.html 4/4
select job from emp group by job having avg(sal) > 2000;
分部门得到工资大于 2000 的所有员工的平均工资,并且平均工资还要大于 2500 select
deptno,avg(sal) from emp where sal>2000 group by deptno having avg(sal)>2500;
得到每个月工资总数最少的那个部门的部门编号,部门名称,部门位置 select * from dept
where
deptno = (
select e.deptno from
(select deptno,sum(sal) from emp group by deptno order by sum(sal)) e
where rownum=1
);

面试题: 数据库笔试 sql操作 已看 上课的练习题50sql的更多相关文章

  1. 面试题:3年工作经验 已看1 有用 memcache和redis有什么区别

    此内容偏中高级,适合有三年经验者. 1.       java中wait和sleep有什么区别?多线程条件下如何保证数据安全? 答:最大区别是等待时wait会释放锁(乐观锁),而sleep会一直持有锁 ...

  2. 面试题: 数据库 oracle数据库 已看1 意义不大 有用

    Oracle数据库面试题总结 2017年04月27日 22:41:44 阅读数:9271 1.SQL语句分类 DQL(数据查询语言)select DML(数据操作语言)insert.delete.up ...

  3. .NET面试题解析(11)-SQL语言基础及数据库基本原理

      系列文章目录地址: .NET面试题解析(00)-开篇来谈谈面试 & 系列文章索引 本文内容涉及到基本SQL语法,数据的基本存储原理,数据库一些概念.数据优化等.抱砖引玉,权当一个综合复习! ...

  4. 常用SQL操作(MySQL或PostgreSQL)与相关数据库概念

    本文对常用数据库操作及相关基本概念进行总结:MySQL和PostgreSQL对SQL的支持有所不同,大部分SQL操作还是一样的. 选择要用的数据库(MySQL):use database_name; ...

  5. 数据库笔试面试题库(Oracle、MySQL等)

    数据库笔试面试题库(Oracle.MySQL等) 版权声明:版权所有,欢迎分享本文,转载请保留出处,否则追究法律责任,谢谢合作. 注:本文将持续更新,可关注作者微信公众号以便获得最新笔试面试资料. ⊙ ...

  6. 面试题: 数据库 sql优化 sql练习题 有用 学生表,课程表,成绩表,教师表 练习

    什么是存储过程?有哪些优缺点? 什么是存储过程?有哪些优缺点? 存储过程就像我们编程语言中的函数一样,封装了我们的代码(PLSQL.T-SQL). 存储过程的优点: 能够将代码封装起来 保存在数据库之 ...

  7. .NET面试题解析(9)-SQL语言基础及数据库基本原理

    见面试题 1. 索引的作用?她的优点缺点是什么? 2. 介绍存储过程基本概念和 她的优缺点? 3. 使用索引有哪些需要注意的地方? 4. 索引碎片是如何产生的?有什么危害?又该如何处理? 5. 锁的目 ...

  8. 总结一些关于操作数据库是sql语句还是存储过程问题

    总结一些关于操作数据库是sql语句还是存储过程问题 程序中,你跟数据的交互,需要向数据库拿数据.更改数据库的数据等,这些操作,本身不是程序完成的,而是程序发命令给数据库去做的,不管是通过sql语句方式 ...

  9. C#连接SQL Server数据库进行简单操作

    环境:VS2010 + SqlServer 2008 首先,按照面向对象的程序设计思想,设计一个数据库操作工具类MyTool.cs,该类中封装了关于数据库连接和操作的方法,各个功能模块在需进行数据库操 ...

随机推荐

  1. python爬虫入门篇

    优质爬虫入门源码:https://github.com/lining0806/PythonSpiderNotes Python Spider:https://www.cnblogs.com/wangy ...

  2. 我们计划为EasyDSS定制开发一款超低延时的EasyPlayer Flash播放器

    现象 最近团队在做EasyDSS RTMP流媒体服务器开发的过程中,遇到了一个关于延时累积的问题,先大概描述一下过程: 在EasyRTMP Android进行长时间的RTMP推流压力测试,在EasyD ...

  3. EasyPlayer RTSP播放器对RTSP播放地址url的通用兼容修改意见

    问题反馈 最近在线上遇到一位老朋友咨询关于EasyPlayer播放器的事情,大概现象就是分别用EasyPlayer和vlc播放大华摄像机的RTSP流,流地址是:rtsp://admin:admin12 ...

  4. 九度OJ 1016:火星A+B (进制转换)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:4913 解决:1334 题目描述:     读入两个不超过25位的火星正整数A和B,计算A+B.需要注意的是:在火星上,整数不是单一进制的, ...

  5. packages/wepy-web/src/wx.js 分析storage 的加载原理 wx.getStorage(OBJECT)

    是小程序实例化后 读入内存 还是每次调用从文件系统读取 https://github.com/Tencent/wepy/blob/bd0003dca2bfb9581134e1b05d4aa1d80fc ...

  6. 洛谷 2868 [USACO07DEC]观光奶牛Sightseeing Cows

    题目戳这里 一句话题意 L个点,P条有向边,求图中最大比率环(权值(Fun)与长度(Tim)的比率最大的环). Solution 巨说这是0/1分数规划. 话说 0/1分数规划 是真的难,但貌似有一些 ...

  7. 流畅的python学习笔记:第十一章:抽象基类

    __getitem__实现可迭代对象.要将一个对象变成一个可迭代的对象,通常都要实现__iter__.但是如果没有__iter__的话,实现了__getitem__也可以实现迭代.我们还是用第一章扑克 ...

  8. ABAP-创建客户

      CALL METHOD CMD_EI_API=>MAINTAIN_BAPI FUNCTION Z_CS_RFC_OA002 . *"------------------------ ...

  9. Qt & MySQL

    Qt中如何进行MySQL连接与操作步骤: 1.向工程中的.pro文件增加QT += sql; 2.写一个通用的数据库连接类(Connect),一个static方法(CreateConnection), ...

  10. [2017-12-20]ElasticSearch 小记

    介绍 ElasticSearch是一款搜索引擎中间件,因其强大的全文索引.查询统计能力和非常方便的全套基于Restful的接口,以及在自动分片.无停机升级扩容.故障转移等运维方面的高效性,逐渐成为中小 ...