光大银行 监督管理平台实施人员考题

监督管理平台实施人员考题

 

注意事项:

  1. 共计31题,满分60分;
  2. 请将答案填写在答题纸上;
  3. 考试时间为2小时。

 

一、选择题(单选题)(共12题,每题1分,共计12分)

  1. Oracle数据库中,关于如何提高sql语句性能,描述错误的是    b   

A. 两个表关联查询时,小表写在FROM子句最后,大表写在FROM之后小表之前。

B. 三个表关联查询时,选择交叉表(被其他表所引用的表)作为基础表, 写在FROM子句最后。

C. WHERE 子句中,ORACLE 采用自上而下的顺序解析WHERE 子句,根据这个原理,表之间的连接必须写在WHERE 子句的末尾,那些可以过滤掉最大数量记录的条件必须写在其他WHERE 条件之前。

D. 用EXISTS 替代IN。

  1. 只有满足联接条件的记录才包含在查询结果中,这种联接为   a    

A. 左联接

B. 右联接

C. 内部联接

D. 完全联接求

 

  1. Select 语句中用来连接字符串的符号是   c    

A. +

B. &

C. ||

D. |

 

  1. 下列命令中可以执行SQL*Plus缓冲区中的一条SQI。语句的是  c     

 A.START    

B.LIST    

C./    

D.SPOOL

 

  1. 在进行条件查询时,如果只记得目标字符串的一部分,则在以下关键字中可以用   于找到符合条件的数据的是    d  

A.IN    

E.EXISTS    

C.IS    

D.LIKE

 

  1. 以下子句中,对查询结果的行进行限定的是   a    
  1. WHERE    
  2. ORDER BY    
  3. SELECT    
  4. FROM

 

  1. 将数字转换为字符的函数是   c     

A.CONVERT()

B.To_DATE()     

C.TO_CHAR()    

D.TO_NUM

 

 

 

  1. 以下函数中,可以从字符串中返回部分子串的是  c    

A.INSTR    

B.LPAD     

C.SUBSTR    

D.LENGT

 

 

  1. 下列关于笛卡尔积的定义正确的是  b     

A.  SELECT sum() FROM dual的结果     

B.没有连接条件的多表连接的结果     

C.SELECT * FROM dual的结果     

D.模糊查询的结果

 

 

  1. 如果进行三个表格的联合查询,最少需要(  c     )个连接条件。     

A.0    B.1    C 2    D.3       

 

 

 

  1. 假设emp表有4条数据,dep表有3条数据,则执行语句SELECT emp.ename,   Dep.Dname FROM  emp,dep的结果为   d    

A.语法错误     

B.有数据行返回,返回的行数要根据表中数据的具体情况来分析    

C.返回3行数据     

D.返回12行数据

 

 

  1. 下列选项中不属于系统权限的是(   d    )。

A.CREATE TABLE    B.CONNECT     C.CREATE SESSION    D.CREATE ANY INDE

 

 

二、问答题(共6题,每题3分,共计18分)

  1. 索引的作用和它的优点缺点是什么?

  索引就一种特殊的查询表,数据库的搜索可以利用它加速对数据的检索。它很类似与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。索引可以是唯一的,创建索引允许指定单个列或者是多个列。缺点是它减慢了数据录入的速度,同时也增加了数据库的尺寸大小。

  1. 列举几种表连接方式?

内连接,外链接,交叉链接,自链接

 

  1. 绑定变量是什么?绑定变量有什么优缺点?

其实质是变量,有些类似于我们经常使用的替代变量,替代变量使用&占位符,只不过绑定变量使用:

优点:
        可以在library cache中共享游标,避免硬解析以及与之相关的额外开销
        在大批量数据操作时将呈数量级来减少闩锁的使用,避免闩锁的竞争
     
    缺点:
        绑定变量被使用时,查询优化器会忽略其具体值,因此其预估的准确性远不如使用字面量值真实,尤其是在表存在数据倾斜

 

  1. 在pl/sql中怎么查看sql的执行计划?

在PL/SQL Developer中写好一段SQL代码,按F5,或者点击“执行执行计划”图标,PL/SQL Developer会自动打开执行计划窗口,显示该SQL的执行计划

 

  1. 常用的Oracle的导入导出有几种方式,有何区别?

 Exp,imp   

使用Oracle自带的插件

一个手动,一个自动

6、请描述下你对监督管理平台追踪查证模型和预警规则设定方式的了解?

 

 

三、编程题(共1大题,含13小题,第1小题6分,其它小题每题2分,共计30分)

 

有某个学生运动会比赛的数据库,保存了如下的表

  ·运动员 sporter(运动员编号 sid,运动员姓名 sname,运动员性别 sex,所属系号 department)

  ·项目 item(项目编号 itemid,项目名称 itemname,项目比赛地点 location)

  ·成绩 grade(运动员编号 sporterid,项目编号 itemid, 积分 mark)

 

sporter(运动表)

列名

数据类型

所指内容

sporterid

NUMBER(10)

运动员编号

name

VARCHAR2(30)

运动员姓名

sex

VARCHAR2(10)

运动员性别

department

VARCHAR2(20)

所属系

 

item(项目表)

列名

数据类型

所指内容

itemid

NUMBER(10)

项目编号

itemname

VARCHAR2(30)

项目名称

location

VARCHAR2(50)

项目比赛地点

 

grade(成绩表)

列名

数据类型

所指内容

sporterid

NUMBER(10)

运动员编号

itemid

NUMBER(10)

项目编号

mark

NUMBER(10)

积分

 

  1. 根据以下要求写出对应的建表语句?(本题6分)
  1. 定义各个表的主键外键约束

 

Alter table sporter add constraint pk_sporterid primary key(sporterid)

Alter table grade add constraint pk_itemid primary key(itemid)

alter table grade add constraint fk_sporterid foreign key(sporterid) references

sporter(sporterid)

Alter table grade add constraint fk_item foreign key(item) references

Sporter(item)

 

 

 

 

 

 

 

  1. 运动员的姓名和所属系别不能为空值。性别的默认值为“性别不详”。

Add table sporter modify (name not null)

Add table sporter modify (department not null)

Update sporter set sex=性别不详 

 

 

 

表中相关数据:

运动员(

1001,李明,男,计算机系

1002,张三,男,数学系

1003,李四,男,计算机系

1004,王二,男,物理系

1005,李娜,女,心理系

1006,孙俪,女,数学系

)

项目(

001, 男子五千米, 一操场

002, 男子标枪,   一操场

003, 男子跳远,   二操场

004, 男子跳高,   二操场

005, 女子三千米, 三操场)

积分(

1001,   001,  6

1002,   001,  4

1003,   001,  2

1004,   001,  0

1001,   003,  4

1002,   003,  6

1004,   003,  2

1005,   004,  6

1006,   004,  4 )

 

请按照要求写出下列要求的sql:

 

  1. 找出运动员编号为1004的运动员的基本信息。(本题2分)

 

 

Select * from sporter where sporterid=1004

 

  1. 找出物理系的所有女生的基本信息。(本题2分)

 

 

 

 Select * from sporter where department=物理系 and sex=

 

  1. 列出运动员编号为1002的运动员所参与的项目,并按照积分排序。(本题2分)

 

 

Select t2.itemname from sporter  t1,item t2,grade t3

Where t1.sporterid=t3.sporterid

And  t3.itemid=t2.itemid

And t1.sporterid=1002

Order by t3.mark desc

 

 

 

  1. 统计参与男子跳远的人的个数。(本题2分)

 

Select count(t1.sporterid) from sporter  t1,item t2,grade t3

Where t1.sporterid=t3.sporterid

And  t3.itemid=t2.itemid

And t2.itemname=男子跳远

Group by t1.sporterid

 

 

 

  1. 求参与男子跳远的最高分。(本题2分)

Select max(t3.mark) from sporter  t1,item t2,grade t3

Where t1.sporterid=t3.sporterid

And  t3.itemid=t2.itemid

And t2.itemname=男子跳远

Group by sporterid

 

 

 

 

 

  1. 求运动员编号为1001的运动员参与的所有项目的积分和。(本题2分)

 

Select sum(t3.mark) from sporter  t1,item t2,grade t3

Where t1.sporterid=t3.sporterid

And  t3.itemid=t2.itemid

And t1.sporterid=1001

 

  1. 对积分表按项目进行统计。(本题2分)

 

Select itemid,count(sporterid) from grade

Group by itemid

 

 

  1. 对积分表按运动员编号去重。(本题2分)

 

Select distinct sporterid from grade 

 

 

 

  1. 对积分表按积分统计并且分数大于等于4。(本题2分)

 

Select itemid,max(mark) from grade

Group by itemid

Having max(mark)

 

 

 

  1. 删除男子标枪的比赛。(本题2分)(grade 里面是不是也要删)

delete  from grade where item=(select itemid from item where itemname=男子标枪

Delete from item where itemname=男子标枪

 

 

  1. 向运动员表中插入运动员编号为1007、运动员名称为邓超,性别为男,所属系为数学系的记录一条。(本题2分)

 

Insert into sporter(sporterid,name,sex,department) values (1007,邓超,,数学系)

 

 

你可能感兴趣的:(试题)