Oracle实验四答案

发布 2022-09-02 13:48:28 阅读 2590

select initcap(ename) from emp;

显示正好为5个字符的员工姓名。

select ename from emp

where length(ename)=5;

显示不带有r的员工姓名。

select * from emp

where ename not like '%r%';

显示所有员工的前三个字符。

select substr(ename,0,3) from emp;

显示所有员工的姓名,用a替换所有a

select replace(ename, 'a', a') from emp;

显示满10年服务年限的员工的姓名和受雇日期。

select ename,hiredate from emp

where months_between(sysdate,hiredate)/12>10;

显示员工的详细资料,按姓名排序。

select * from emp order by ename;

显示员工的姓名和受雇日期,根据其服务年限,将最老的员工排在最前面。

select ename,hiredate from emp

order by hiredate;

显示所有员工的姓名、工作和薪金,按工作的降序排序,若工作相同按薪金排序。

select ename,job,sal from emp

order by job desc,sal;

显示所有员工姓名、加入公司的年份和月份,按受雇日期所在月排序,若月份相同则将最早年份的员工排在最前面。

select ename,to_char(hiredate, 'yyyy') year, to_char(hiredate, 'mm') months

from emp

order by months,year;

显示在一个月为30天的情况下所有员工的日薪金,忽略余数。

select ename,sal,trunc(sal/30) from emp;

找出在任何年份的2月受聘的所有员工。

select * from emp where to_char(hiredate, 'mm')=2;

对于每个员工显示其加入公司的天数。

select ename,trunc(sysdate-hiredate) from emp;

以年月日的方式显示所有员工的服务年限。

select ename,hiredate,trunc(months_between(sysdate,hiredate)/12) year,mod(trunc(months_between(sysdate,hiredate)),12) months,trunc(sysdate-add_months(hiredate,months_between(sysdate,hiredate)))day

from emp;

实验四。列出所有员工的姓名、部门名称和工资。

select

from emp e,dept d

where

列出所有部门的详细信息和部门人数。

select

from emp e,dept d

where e. deptno(+)

group by

列出所有员工的年工资、所在部门名称,按年薪升序排序。

select income,from emp e,dept d

where

order by income;

查出每个员工的上级主管及所在部门名称,并要求这些主管的薪水超过3000

select distinct

from emp e,emp m,dept d

where and and >3000;

求出部门名称中带‘s’字符的部门员工的工资合计、部门人数。

select

from emp e,dept d

where and like '%s%'

group by

列出部门名称和这些部门的员工信息(数量、平均工资),同时列出那些没有员工的部门。

select

from emp e,dept d

where

group by

列出在部门“sales”工作的员工姓名、基本工资、雇佣日期、部门名称,假定不知道销售部的部门编号。

select

from emp e,dept d

where and 'sales';

列出公司各个工资等级雇员的数量、平均工资。

select

from emp e,salgrade s

where between and

group by

列出薪金高于在部门30工作的所有员工的薪金的员工姓名和薪金、部门名称。

select

from emp e,dept d

where sal>all(

select sal from emp where deptno=30)

and 列出受雇日期早于直接上级的所有员工的编号、姓名、部门名称、部门位置、部门人数。

select

from emp e,emp m,dept d,(

select deptno dno,count(empno) count

from emp

group by deptno) temp

where and <

and and

列出所有“clerk”的姓名及其部门名称、部门人数、工资等级。

select

from emp e,dept d,(

select deptno dno,count(empno) count

from emp

group by deptno) temp,salgrade s

where 'clerk' and

and and between and

列出最低薪金大于1500的各种工作及从事此工作的全部雇员人数及所在部门名称、位置、平均工资。

select

from dept d,(

select job,count( count

from emp e

group by

h**ing min(>1500) temp,emp e,(

select deptno dno,**g(sal) **g

from emp

group by deptno) res

where and

and 列出薪金高于公司平均薪金的所有员工、所在部门、上级领导、公司的工资等级。

select

from emp e,dept d,emp m,salgrade s

where >(

select **g(sal) from emp)

and and

and between and

列出与scott从事相同工作的所有员工及部门名称、部门人数。

select

from emp e,dept d,(

select deptno dno,count(empno) count

from emp

group by deptno) temp

where

select job

from emp

where ename='scott') and <>scott'

and and

列出在每个部门工作的员工数量、平均工资和平均服务期限。

select year

from emp e,dept d

where e. deptno(+)

group by

列出各种工作的最低工资及此雇员姓名。

select

from emp e,(

oracle期末实验含答案

1 数据库的建表语句,我们是必须要掌握的,其中,主外键的定义是一种数据库完整性的规范,我们也要掌握。创建如下两个表 course表 cid number 主键。cname varchar2 create table course cid number primary key,cname varcha...

oracle实验二 表管理答案

实验二表管理。一 实验目的。1.熟悉创建表 修改表等相关命令。2.掌握表中数据的插入 修改 删除等数据操作。3.掌握数据的查询基础。二 实验要求。1.整理上机步骤,总结经验和体会。2.完成实验日志和上交程序。三 作业提交。1.建立以自己名字命名的文件夹,文件夹中包含两个文件夹,名字各为 实验成果,实...

答案实验五 ORACLE编程 一

oracle技术 实验报告 五 实验名称oracle编程 一 姓名学号班级。实验目的 1 熟练掌握编写和调试pl sql块的方法。2 熟练掌握编写和调试存储过程方法。3 熟练掌握编写和调试函数方法。4 熟练掌握各种控制结构语句的使用。实验内容 1 编写一个pl sql块,输出emp表中所有员工的员工...