ORACLE 05 基本查询

一、实验目的
1、掌握SELECT语句的基础语法
2、掌握常用的函数的使用
3、了解格式化查询结果的常用命令
二、实验内容
使用scott方案下中emp表和dept表,完成以下操作:
(1)查询部门编号是20的员工信息。
(2)查询工作为CLERK员工的工号、员工名和部门号。
(3)查询奖金COMM高于SAL的员工信息。
(4)查询奖金高于工资都20%的员工信息。
(5)查询部门编号是10并且工作为MANAGER的员工和部门编号为20 并且工作为CLERK的员工的信息。
(6)查询工作不是MANAGER和CLERK,并且工资大于或等于2000的员工信息。
(7)查询有奖金的员工信息。
(8)查询所有员工的人数和他们的平均工资。
(9)查询没有奖金或奖金低于100的员工信息。
(10)查询最近两年入职的员工信息。
(11)查询工龄大于或等于10年的员工信息。
(12)查询员工信息,要求以首字母大写的方式显示所有员工姓名。
(13)查询员工名正好为6个字母的员工信息。
(14)查询员工名字中不包括字母S的员工。
(15)查询员工姓名的第二个字母为M的员工信息。
(16)查询所有员工姓名的前三个字符。
(17)查询所有员工的姓名,如果包含字母s则用S代替。
(18)查询员工的姓名和入职日期,并按入职日期从先到后进行排序。、
(19)显示所有员工的姓名、工作、工资、按工作降序排序,若工作相同则按工资升序排序。
(20)显示所有员工的姓名、入职年份和月份,按入职日期所在的月份排序,若月份相同则按入职的年份排序。
(21)查询每个部门的员工数量、平均工资和平均工作年限。
(22)查询每个部门的人数及平均工资。
(23)查询各种工作的最低工资,并输出最低工资低于3000的工作名称。
(24)查询各个部门中不同工种的最高工资。
(25)统计各个工种的员工人数与平均工资。
三、实验环境
虚拟机下的windows,ORACLE 10g

四、实验步骤
使用scott方案下中emp表和dept表,完成以下操作:
(1) 查询部门编号是20的员工信息。
这里写图片描述
(2) 查询工作为CLERK员工的工号、员工名和部门号。
这里写图片描述
(3) 查询奖金COMM高于SAL的员工信息。
这里写图片描述
(4) 查询奖金高于工资都20%的员工信息。
这里写图片描述
(5) 查询部门编号是10并且工作为MANAGER的员工和部门编号为20 并且工作为CLERK的员工的信息。
这里写图片描述
(6) 查询工作不是MANAGER和CLERK,并且工资大于或等于2000的员工信息。
这里写图片描述
(7) 查询有奖金的员工信息。
这里写图片描述
(8) 查询所有员工的人数和他们的平均工资。
这里写图片描述
(9) 查询没有奖金或奖金低于100的员工信息。
这里写图片描述
(10) 查询最近两年入职的员工信息。
这里写图片描述
(11) 查询工龄大于或等于10年的员工信息。
这里写图片描述
(12) 查询员工信息,要求以首字母大写的方式显示所有员工姓名。
这里写图片描述
(13)查询员工名正好为6个字母的员工信息。
(14)查询员工名字中不包括字母S的员工。
(15)查询员工姓名的第二个字母为M的员工信息。
(16)查询所有员工姓名的前三个字符。
(17)查询所有员工的姓名,如果包含字母s则用S代替。
(18)查询员工的姓名和入职日期,并按入职日期从先到后进行排序。、
(19)显示所有员工的姓名、工作、工资、按工作降序排序,若工作相同则按工资升序排序。
(20)显示所有员工的姓名、入职年份和月份,按入职日期所在的月份排序,若月份相同则按入职的年份排序。
(21)查询每个部门的员工数量、平均工资和平均工作年限。
(22)查询每个部门的人数及平均工资。
(23)查询各种工作的最低工资,并输出最低工资低于3000的工作名称。
(24)查询各个部门中不同工种的最高工资。
(25)统计各个工种的员工人数与平均工资。

五、总结
(1) select * from scott.emp
where deptno=20;
(2) select empno,ename,deptno from scott.emp
where job=’CLERK’;
(3)> select * from scott.emp
where COMM>SAL;
(4) select * from scott.emp
where comm > SAL*0.2;
(5)select * from scott.emp
where deptno=10 and job=’MANAGER’ or (deptno=20 and job=’CLERK’);
(6) select * from scott.emp
where not(job=’MANAGER’ OR job=’CLERK’) AND sal>=2000;
(7)select * from scott.emp
where comm>0;
(8) select count(*) as 总人数,avg(sal) as 平均工资
from scott.emp;
(9) select * from scott.emp
where comm is null or comm<100;
(10) select * from scott.emp
where hiredate between ‘1-1月-2015’ and ‘1-1月-2017’;
(11) select * from scott.emp
where months_between(sysdate,hiredate)/12 >= 10;
(12)SQL> select lower(ename),initcap(ename)
2 from scott.emp;

  • 0
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值