Oracle 面试题库SQL.docx

上传人:b****4 文档编号:5128519 上传时间:2023-05-08 格式:DOCX 页数:36 大小:28.13KB
下载 相关 举报
Oracle 面试题库SQL.docx_第1页
第1页 / 共36页
Oracle 面试题库SQL.docx_第2页
第2页 / 共36页
Oracle 面试题库SQL.docx_第3页
第3页 / 共36页
Oracle 面试题库SQL.docx_第4页
第4页 / 共36页
Oracle 面试题库SQL.docx_第5页
第5页 / 共36页
Oracle 面试题库SQL.docx_第6页
第6页 / 共36页
Oracle 面试题库SQL.docx_第7页
第7页 / 共36页
Oracle 面试题库SQL.docx_第8页
第8页 / 共36页
Oracle 面试题库SQL.docx_第9页
第9页 / 共36页
Oracle 面试题库SQL.docx_第10页
第10页 / 共36页
Oracle 面试题库SQL.docx_第11页
第11页 / 共36页
Oracle 面试题库SQL.docx_第12页
第12页 / 共36页
Oracle 面试题库SQL.docx_第13页
第13页 / 共36页
Oracle 面试题库SQL.docx_第14页
第14页 / 共36页
Oracle 面试题库SQL.docx_第15页
第15页 / 共36页
Oracle 面试题库SQL.docx_第16页
第16页 / 共36页
Oracle 面试题库SQL.docx_第17页
第17页 / 共36页
Oracle 面试题库SQL.docx_第18页
第18页 / 共36页
Oracle 面试题库SQL.docx_第19页
第19页 / 共36页
Oracle 面试题库SQL.docx_第20页
第20页 / 共36页
亲,该文档总共36页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Oracle 面试题库SQL.docx

《Oracle 面试题库SQL.docx》由会员分享,可在线阅读,更多相关《Oracle 面试题库SQL.docx(36页珍藏版)》请在冰点文库上搜索。

Oracle 面试题库SQL.docx

Oracle面试题库SQL

题目内容:

 

1.ORACLE用来判断列值是否为空的操作符是____

A==NULL

BISNULL

CASNULL

DNULLIS

2分析以下的SQL命令

SELECTi.id_number,m.id_number

FROMinventoryi,manufacturerm

WHEREi.manufacturer_id=m.id_number

ORDERBYinventory.description;

如何修改上述命令使其成功执行()

AORDERBYdescription

BORDERBYi.description

CWHEREinventory.manufacturer_id=m.id_number

ORDERBYinventory.description

DORDERBYinventory.description;

3.在客户定单表(CUSTOMER)中有一列为单价(PRICE),写一个SELECT命令显示所有单价在500以上的查询语句。

ASELECT*FROMCUSTOMERWHEREPRICE>500;

BSELECT*FROMCUSTOMERWHEREPRICEBETWEEN500AND*;

CSELECT*FROMCUSTOMERWHEREPRICE LIKE‘%500%’;

DSELECT*FROMCUSTOMERWHEREPRICE>=500;

4.分析以下SQL命令:

SELECTprice

FROMinventory

WHEREpriceBETWEEN1AND50

AND(priceIN(55,30,95);

命令执行后的输出结果是:

( )

A55

B30

C95

DNULL

5.分析以下的SQL命令:

SELECTmanufacturer_id

FROMinventory

WHEREmanufacturer_idLIKE‘%N\%P\%O%’ESCAPE‘\’;

命令执行的返回结果是()

A所有包含’NPO’的纪录

B所有包含’N\P\O’的纪录

C所有包含’N%P%O’的纪录

D所有包含’%N\P\O%’的纪录

6.分析以下的SQL命令:

SELECTi.id_number,m.manufacturer_name

FROMinventoryi,manufacturerm

WHEREi.manufacturer_id(+)=m.id_number;

WHERE子句中的(+)是什么含义?

A将inventory表中不满足条件的记录也查出来

B将i.manufacturer_id+m.id_number

C将manufacturer表中不满足条件的记录也查出来

D不能这样写,语法错误

7.写一SQL语句实现以下功能,把inventory表中的ORDER_DATE值‘23-MAY-00′显示成‘01-JAN-00′

A SELECTROUND(order_date,‘YEAR’)FROMinventory;

B SELECTTO_DATE(order_date,‘DD-MM-YY’)FROMinventory;

C SELECTTO_CHAR(order_date,‘DD-MM-YY’)FROMinventory;

D 都不对

8.下面的SQL命令显示的结果是什么类型:

TO_DATE(’01-JAN-1998′)–TO_DATE(’01-DEC-1996′)

A数值

B字符串

C日期

D出现错误

9.简述ROUND和TRUNC 操作的区别?

A ROUND在截掉数据时有四舍五入的判断,TRUNC直接按要求截掉没有进位。

B都是将数据按指定的长度截断

CTRUNC是四舍五入,ROUND是截断

D都会四舍五入

10.简述SUBSTR和LENGTH的主要功能。

答案:

SUBSTR:

用来在一个字符串中求子串

LENGTH:

用于求字符串的长度。

11.分析以下的SQL命令:

SELECTCONCAT(UPPER(SUBSTR(location,1,3)),dept_number)“DepartmentLocation”

FROMdepartment;

哪个function最后执行?

a.UPPER

答案:

concat

12.分析以下的SQL命令:

SELECT*

FROMproduct

WHERELOWER(description)=‘CABLE’;

命令能否执行?

是否有结果返回?

为什么?

答案:

命令可以执行,没有结果返回,因为查询条件中的LOWER把查询列值改为小写,而等号右侧为大写,所以不会有结果返回。

13.在PLAN表中有一列为SPECIES_ID,该列与SPECIES表的ID列对应,但后者包含空值,要想在显示结果中包含SPECIES表的ID列为空值的行的信息,用那种连接条件可以实现?

答案:

外连接

14.分析以下的SQL命令:

SELECTi.id_number,m.manufacturer_id

FROMinventoryi,inventorym

WHEREi.manufacturer_id=m.region_id_number;

该命令中使用的连接条件是()连接

答案:

自连接

15.外连接的符号可以放在连接条件的哪边,可以两边同时使用吗?

答案:

放在包含空值的一边,不可以两边同时使用

16.如果用等值连接来查询5张表内的信息,至少需要几个连接条件?

答案:

至少需要4个连接条件。

17.分析以下的SQL命令:

SELECTi.id_number,m.id_number

FROMinventoryi,manufacturerm

WHEREi.manufacturer_id=m.id_number

ORDERBY1;

该命令执行结果的排序是按那一列的值排序的?

答案:

按inventory 表的id_number列排序

18.如果在where子句中有两个条件要同时满足,应该用以下哪个逻辑符来连接

A.OR

B.NOT

C.AND

D.NONE

答案c

19.外连接的条件可以放在以下的那一个子句中

A.FROM

B.WEHRE

C.SELECT

D.HAVING

E.GROUPBY

F.ORDERBY

答案B

20.在从两个表中查询数据时,连接条件要放在哪个子句中

A.FROM

B.WHERE

C.SELECT

D.HAVING

E.GROUPBY

答案B

21用以下哪个子句来限制分组统计结果信息的显示

A.FROM

B.WEHRE

C.SELECT

D.HAVING

E.GROUPBY

F.ORDERBY

答案D

22.数据库中的TEACHER表的结果如下:

IDNUMBER(7)PK

SALARYNUMBER(7,2)

SUBJECT_IDNUMBER(7)

至少有两行以上的SUBJECT_ID值是不同的

分析以下的SQL命令:

1.SELECTROUND(SUM(salary),-4)

FROMteacher;

2.SELECTsubject_id,ROUND(SUM(salary),-2)

FROMteacher

GROUPBYsubject_id;

两个命令的显示结果相同吗?

哪个命令显示的结果会多些?

答案:

不同,命令2会返回更多的结果

23.如果想对分组统计的结果信息进行筛选,用where条件子句能实现吗?

如果不行该用什么子句实现?

答案:

用where子句不能实现,应该用having子句

24.以下需求中哪个需要用分组函数来实现?

A.把ORDER表中的定单时间显示成‘DDMONYYYY’格式

B.把字符串‘JANUARY28,2000′转换成日期格式

C.显示PRODUCT表中的COST列值总量

D.把PRODUCT表中的DESCRIPTION列用小写形式显示

答案C

25.用以下的SQL语句查询数据库:

SELECTid_number“PartNumber”,SUM(price*quantity)TOTAL,description

FROMinventory

WHEREprice>5.00

ORDERBY“PartNumber”,3;

哪一句会产生错误?

A.FROMINVENTORY

B.WHEREPRICE>5.00

C.ORDERBY“PARTNUMBER”,3;

D.SELECTid_number“PartNumber”,SUM(price*quantity)TOTAL,description

答案D

26. EMPLOYEE表包含以下的列:

EMP_IDNUMBER(9)

NAMEVARCHAR2(25)

BONUSNUMBER(5,2)

DEPT_IDNUMBER(9)

如果想计算所有具有bonus的职员的bonus平均值,不考虑该列包含空值的那些雇员,用什么功能函数可以实现?

答案:

使用AVG函数可以实现。

27.写出包含SELECT,FROM,HAVING,WHERE,GROUPBY,ORDERBY子句的书写顺序

答案:

SELECTFROMWHEREGROUPHAVINGORDERBY

28.分析以下的SQL命令

SELECTid_number“PartNumber”,SUM(price)“Price”

FROMinventory

WHEREprice>5.00

GROUPBY“PartNumber”

ORDERBY2;

哪一个子句会产生错误?

如何修改

答案:

第四句GROUPBY“PartNumber”会产生错误,应改为GROUPBYid_number

29.在单行子查询中,子查询的返回结果为多少,返回2行可以吗?

答案:

只能返回一行,否则会出错。

30.以下操作符中哪个可以用做单行简单查询的操作符

A.=

B.IN

C.LIKE

D.BETWEEN

答案A

31.分析以下的SQL命令:

SELECTid_number

FROMinventory

WHEREmanufacturer_idIN

(SELECTmanufacturer_id

FROMinventory

WHEREprice<1.00

ORprice>6.00);

该子查询的能否执行,是否有语法错误?

答案:

没有语法错误,可以执行为

32.分析以下SQL命令:

SELECTemployee_id,name

FROMemployee

WHEREemployee_idNOTIN(SELECTemployee_id

FROMemployee

WHEREdepartment_id=30

ANDjob=‘CLERK’);

如果子查询返回空值,结果会是什么样?

答案没有结果返回。

33.如果用户用UPDATE命令修改了表中的数据值,是否可以恢复回来?

答案:

如果事务没有提交可以用ROLLBACK恢复回来。

34.用户对某表中的数据做修改操作,还没有提交,此时机器断电,修改结果是否能保存在数据库中?

答案:

不能,因为非正常结束的事务会被ORACLE回滚掉

35.以下那些命令可以暗含提交操作?

A.GRANT

B.UPDATE

C.SELECT

D.ROLLBACK

答案A

36.那种类型的约束可以自动创建索引?

答案:

UNIQUE,PRIMARTKEY

37哪中类型的约束只能定义在列级

A.CHECK

B.UNIQUE

C.NOTNULL

D.PRIMARTKEY

E.FOREIGNKEY

答案C

38.可以在以下哪个对象上创建视图?

(选择两个)

A.VIEW

B.QUERY

C.TABLE

D.COMMAND

E.TRANSAction

答案A,C

39.分析以下SQL命令:

CREATEFORCEVIEWparts_vu(company,contact)

ASSELECTmanufacturer_name,contact_name

FROMinventory

WITHREADONLY;

在PARTS_VU视图上可以执行UPDATE操作吗?

为什么?

可以进行什么操作?

答案:

 不能执行UPDATE操作,因为该视图是只读的,只能进行select(检索)操作

40.表PERSONNEL的结构如下:

IDNUMBER(9)

LAST_NAMEVARCHAR2(25)

FIRST_NAMEVARCHAR2(25)

MANAGER_IDNUMBER(9)

这里,部门的管理者也看作是雇员..

分析以下两个命令:

SELECTp.last_name,p.first_name,m.last_name,m.first_name

FROMpersonnelp,personnelm

WHEREm.id=p.manager_id;

SELECTp.last_name,p.first_name,m.last_name,m.first_name

FROMpersonnelp,personnelm

WHEREm.manager_id=p.id;

两个的执行结果一样吗?

答案一样,但格式不同

41.如果一个表中的数据包含许多空值,是否适合建索引?

答案适合

42.分析以下命令

CREATEPUBLICSYNONYMparts

FORmarilyn.inventory;

它的作用是什么?

为用户marilyn的inventory对象(不一定是表)建一个同义词或叫别名

43.分析以下的SQL命令

CREATESEQUENCEline_item_id

STARTWITH10001

MAXVALUE999999999

NOCYCLE;

请问这个序列NOCYCLE关键字的含义是什么?

答案:

当序列的值增长到最大值的时候,会从1001开始从新使用

44.DEPARTMENT表的结构如下:

DEPT_IDNUMBER(9)

DEPT_NAMEVARCHAR2(20)

REGION_IDNUMBER(9)

REGION_ID列有一个外键约束,参照REGION表,用下面的SQL语句修改DEPARTMENTtable表

UPDATEdepartment

SETdept_id=6546,

region_id=9705

WHEREdept_id=8940;

产生以下的错误信息:

ORA-02291:

integrityconstraint(SYS_C23)violated–parentkeynotfound

错误可能会在那一行?

答案:

可能在region_id=9705这一行。

45.表TEACHER的结构如下:

NameNull?

Type

—————————————————————-—————————-

TEACHER_IDNOTNULLNUMBER(9)

NAMEVARCHAR2(25)

SALARYNUMBER(7,2)

SUBJECT_IDNOTNULLNUMBER(3)

SUBJECT_DESCRIPTIONVARCHAR2

(2)

编写一个SQL命令,实现以下要求,给所有的scienceteachers增加8%的工资TheSUBJECT_IDforscienceteachers的SUBJECT_ID值是011.

答案:

UPDATEteacher

SETsalary=salary*1.08

WHEREsubject_id=011;

46.ORACLE数据库有哪几种约束类型

答案:

五种。

是PRIMARYKEY,FOREIGNKEY,UNIQUE,CHECK,NOTNULL。

47.在建表时如果希望某列的值,在一定的范围内,应建什么样的约束?

答案:

CHECK约束。

48.RDBMS是下列哪一项的缩写:

___

ARelationalDataBaseManagementSystem(关系数据库管理系统)

BRelationalDataBaseMigrationSystem(关系数据库移植系统)

CRelationalDataMigrationSystem(关系数据移植系统)

DRelationalDataBaseManageSystem(关系数据库管理系统)

49.INSERT是

ADML语句

BDDL语句

CDCL语句

DDTL语句

50.COUNT(*)函数返回____

A包括空值和重复值得所有记录

B不包含空值的纪录

C带有重复值但无空值得记录

D都不是

51.____什么操作符将两个查询的结果合并为单个结果

A算术

B比较

C集合

D以上都不是

52..____什么操作符之返回两个查询的共有行

A INTERSECT

B UNION

C MINUS

D 没有

53.日期函数是

A分组函数

B单行函数

C聚合函数

D都不是

54.SELECTCHR(66)FROMDUAL的结果是_____

A Z

B S

C B

D 都不是

55.____函数返回一个值除以另一个值后的余数

A MOD

B ABS

C CEIL

D 以上都不是

56.____函数返回列表中第一个非空的表达式

A NVL

B NVL2

C COALESCE

D 以上都不是

57.____子句处理分组的结果

A WHERE

B HAVING

C SELECT

D 以上都不是

58.什么锁用于锁定表,仅允许其他用户查询表中的行,行不允许插入,更新,或删除行

A 共享

B 排他

C 共享更新

D 以上都不是

59.使用带有____子句的SELECT命令可以在表的一行或多行上放置排他锁

A FORINSERTOF

B FORUPDATEOF

C FORREFRESH

D EXCLUSIVE

60.对象关系模型支持:

A面向对象的概念和关系的概念

B仅支持关系的概念

C仅面向对象对象的概念

D以上都不是

61.TRUNCATETABLE是用于____:

A删除表结构

B仅删除记录

C删除结构和记录

D都不是

62.同义词用于下列情况

1 隐藏对象的名称和所有者

2 提供对对象的公共访问

A 两者都对

B 1错 2对

C 两者都错

D 1对 2错

63._____是oracle提供的一个对象,可以生成唯一的连续的整数

A 同义词

B 序列

C 视图

D 没有

64.可以使用____和____伪列来访问序列

A nextval和currentval

B nextval和previousval

C cache和nocache

D 以上都不对

65.下列有关视图的描述那一个是正确的

A 视图时已存储的查询

B 视图隐藏了数据的复杂性

C 视图就是表

D 视图不提供安全性

66._____是与表关联的可选结构

A 视图

B 索引

C 同义词

D 以上都不是

67.在下列哪种情况下,索引最有用

A 索引列被声明为notnull

B 在where子句中使用了索引列

C 索引列包含许多不同的值

D 定义尽可能多的索引

68.检查下列创建的orders表的SQL语句

CREATETABLEORDERS(

SER_NONUMBERUNIQUE,

ORDER_IDNUMBER,

ORDER_DATEDATENOTNULL,

STATUSVARCHAR2(10)CHECK(STATUSIN(‘CREDIT’,’CASH’)),

PROD_IDNUMBERREFERENCESPRODUCTS(PRODUCT_ID),

ORD_TOTALNUMBER,

PRIMARYKEY(ORDER_ID,ORDER_DATE)

当执行上述语句时,将自动为那些列创建索引

A SER_ID

B ORDER_ID

C STATUS

D PRID_ID

69当在表加入一条数据时,如果其中一个字段未指定任何数据,此时该字段会存放什么值

A0

BNULL

C”(空字符)

D不确定

1.ORACLE用来判断列值是否为空的操作符是____

A==NULL

BISNULL

CASNULL

DNULLIS

2分析以下的SQL命令

SELECTi.id_number,m.id_number

FROMinventoryi,manufacturerm

WHEREi.manufacturer_id=m.id_number

ORDERBYinventory.description;

如何修改上述命令使其成功执行()

AORDERBYdescription

BORDERBYi.description

CWHEREinventory.manufacturer_id=m.id_number

ORDERBYinventory.description

DORDERBYinventory.description;

3.在客户定单表(CUSTOMER)中有一列为单价(PRICE),写一个SELECT命令显示所有单价在500以上的查询语句。

ASELECT*FROMCUSTOMERWHEREPRICE>500;

BSELECT*FROMCUSTOMERWHEREPRICEBETWEEN500AND*;

CSELECT*FROMCUSTOMERWHEREPRICE LIKE‘%500%’;

DSELECT*FROMCUSTOMERWHEREPRICE>=500;

4.分析以下SQL命令:

SELECTprice

FROMinventory

WHEREpriceBETWEEN1AND50

AND(priceIN(55,30,95);

命令执行后的输出结果是:

( )

A55

B30

C95

DNULL

5.分析以下的SQL命令:

SELECTmanufacturer_id

FROM

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2