oracle基础sql题目

1、选择在部门30中员工的所有信息
2、列出职位为(MANAGER)的员工的编号,姓名
3、找出奖金高于工资的员工
4、找出每个员工奖金和工资的总和
5、找出部门10中的经理(MANAGER)和部门20中的普通员工(CLERK)
6、找出部门10中既不是经理也不是普通员工,而且工资大于等于2000的员工
7、找出有奖金的员工的不同工作
8、找出没有奖金或者奖金低于500的员工
9、显示雇员姓名,根据其服务年限,将最老的雇员排在最前面
10、找出每个月倒数第三天受雇的员工
11、分别用case和decode函数列出员工所在的部门,deptno=10显示'部门10',
 deptno=20显示'部门20'
 deptno=30显示'部门30'
 deptno=40显示'部门40'
 否则为'其他部门'
12、分组统计各部门下工资>500的员工的平均工资
13、统计各部门下平均工资大于500的部门
14、算出部门30中得到最多奖金的员工奖金
15、算出部门30中得到最多奖金的员工姓名
16、算出每个职位的员工数和最低工资
17、列出员工表中每个部门的员工数,和部门no
18、得到工资大于自己部门平均工资的员工信息
19、分组统计每个部门下,每种职位的平均奖金(也要算没奖金的人)和总工资(包括奖金)
20、笛卡尔集
21、显示员工ID,名字,直属主管ID,名字
22、DEPT表按照部门跟EMP表左关联
23、使用此语句重复的内容不再显示了
24、重复的内容依然显示
25、只显示了两个表中彼此重复的记录。
26、只显示了两张表中的不同记录
27、列出员工表中每个部门的员工数,和部门no
28、列出员工表中每个部门的员工数(员工数必须大于3),和部门名称
29、找出工资比jones多的员工
30、列出所有员工的姓名和其上级的姓名
31、以职位分组,找出平均工资最高的两种职位
32、查找出不在部门20,且比部门20中任何一个人工资都高的员工姓名、部门名称
33、得到平均工资大于2000的工作职种
34、分部门得到工资大于2000的所有员工的平均工资,并且平均工资还要大于2500
35、得到每个月工资总数最少的那个部门的部门编号,部门名称,部门位置
36、分部门得到平均工资等级为2级(等级表)的部门编号
37、查找出部门10和部门20中,工资最高第3名到工资第5名的员工的员工名字,部门名字,部门位置
38、查找出收入(工资加上奖金),下级比自己上级还高的员工编号,员工名字,员工收入
39、查找出职位和'MARTIN' 或者'SMITH'一样的员工的平均工资
40、查找出不属于任何部门的员工
41、按部门统计员工数,查处员工数最多的部门的第二名到第五名(列出部门名字,部门位置)
42、查询出king所在部门的部门号\部门名称\部门人数 (多种方法)
43、查询出king所在部门的工作年限最大的员工名字
44、查询出工资成本最高的部门的部门号和部门名称

(温馨提示:本题目不难,不管对不对如果每个题目都能按自己的思路写个sql出来,那你的sql能力一定有很好的提升,

前提是一定要有恒心哦,把它们做完咯,不要像我突然有激情想写sql做了20多道然后玩了会儿,最后就一搁到现在.

恒心很重要的.)

你可能感兴趣的:(oracle,sql,工作)