第一范文网 - 专业文章范例文档资料分享平台

02 Oracle 习题集(V4)

来源:用户分享 时间:2025/5/28 13:36:19 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

Oracle习题集 北京融信学唐科技有限公司

and sex='男')

or ((age between 18 and 55) and sex='女')) );

create sequence myseq1 increment by 1 start with 1; insert into emp1 values(myseq1.nextval,'TOM','男',21,10); insert into emp1 values(myseq1.nextval,'JERRY','男',21,20); insert into emp1 values(myseq1.nextval,'KATE','女',21,30); insert into emp1 values(myseq1.nextval,'MARY','女',21,40); insert into emp1 values(myseq1.nextval,'JACK','男',21,50); create table emp_bak as (select * from emp1 where 1=2);

alter table emp_bak add constraint emp_bak_dept_fk foreign key (deptno) references dept(deptno);

delete emp1 where ename='JACK';

update emp1 set age=23 where ename='MARY'; 2. 请创建一个表,表名为phone,表结构如下

电话号码(PHONENUM VARCHAR2(8)) 电话费 (PAY number(8,2)) 号码等级(NUMLEVEL VARCHAR2(4)) 费用日期(PAYDATE varchar2(12) (1)

插入以下两条数据:

123456, 600, pt04, 20051220 888888, 900, pt05, 20051019. (2)

创建一个备份表结构名为phone_bak, 将phone中的数据插入phone_bak中.

(3) (4)

将电话号码为123456的电话费改为1000,执行回滚操作

查询phone表中所有字段和所有数据,如果PHONENUM字段中的数据为‘123456’,则返回‘Y’否则返回‘N’

(5)

查询phone表中所有字段和所有数据,显示费用日期(PAYDATE)字段的日期转变成YYYY/MM/DD格式显示。

第17页 共32页

Oracle习题集 北京融信学唐科技有限公司

(6) 将电话号码为888888的号码等级改为pt04并提交

(1)create table phone( phonenum varchar2(8),

pay number(8,2) , numlevel varchar2(4), paydate varchar2(12) )

(1)insert into phone values('123456',600,'pt04','20051220'); insert into phone values('888888',900,'pt05','20051019'); (2)create table phone_bak as (select * from phone); (3)update phone set pay=1000

where phonenum='123456' rollback

(4)SELECT p.*,decode(p.phonenum,123456,'Y','N')FROM phone p; (5) SELECT phonenum,pay,numlevel,to_date(paydate,'yyyy/mm/dd') FROM phone;

(6) UPDATE phone SET numlevel='pt04' WHERE phonenum=888888;

COMMIT;

第18页 共32页

Oracle习题集 北京融信学唐科技有限公司

第6章 视图

1. 什么是视图。它有什么作用。

视图是一个 虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。视图实际上是一张或者多张表上的预定义查询,这些表称为基表。

2. 创建一个视图,此视图要包括以下信息:员工编号,员工姓名。

create view view1 select empno,ename from emp;

3. 创建一个视图,此视图要包括以下信息:员工编号,员工姓名,部门编号,

部门名称。 create view view2

as select empno,ename,e.deptno,d.dname from emp e,dept d where e.deptno=d.deptno;

4. 创建一个视图,此视图要包括以下信息:员工编号,员工姓名,经理编号,

经理姓名。 create view view3

as select e.empno,e.ename,m.empno 经理编号,m.ename 经理姓名 from emp e,emp m where e.mgr=m.empno;

5. 创建一个视图,此视图要包括以下信息:部门编号,员工个数。

create view view4

as select deptno,count(ename) 人数 from emp e group by deptno;

6. 创建一个视图,此视图要包括以下信息:部门编号,部门名称,员工个数。

create view view5

as select e.deptno, d.dname,count(ename) 人数 from emp e,dept d

第19页 共32页

必须使用列别名命名此表达式,否则会出错 在创建视图时,重复字段后面要使用别名,否则会出错 Oracle习题集 北京融信学唐科技有限公司

where e.deptno=d.deptno group by e.deptno, d.dname;

7. 创建一个视图,此视图要包括以下信息:部门编号,部门名称,员工个数,

部门内所有员工薪水的合计,部门内员工最高薪水,部门内员工最低薪水,部门内平均薪水。 create view view6

as select e.deptno, d.dname,count(ename) 人数,sum(sal) 总薪水, max(sal) 最高薪水,min(sal) 最低薪水,avg(sal) 平均薪水 from emp e,dept d where e.deptno=d.deptno group by e.deptno, d.dname;

第20页 共32页

搜索更多关于: 02 Oracle 习题集(V4) 的文档
02 Oracle 习题集(V4).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1snm79zc2a20sz43251r_5.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top