IT技能面试题附答案Word格式文档下载.docx
《IT技能面试题附答案Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《IT技能面试题附答案Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。
![IT技能面试题附答案Word格式文档下载.docx](https://file1.bdocx.com/fileroot1/2022-10/13/82428691-1cfd-4c3a-8449-466dfd736a43/82428691-1cfd-4c3a-8449-466dfd736a431.gif)
UNION的理解
答案:
A
(3)、已知表T1含有字段ID、CourseID和Score,且数据为
ID
CourseID
Score
3
1
90
2
85
80
则语句“selectid,sum(ScorE)fromT1groupbyID”的执行结果为_________
A、ID
sum(ScorE)
—–
———-
3
170
2
175
B、ID
C、ID
D、ID
第三题GROUPBY对按照ID字段进行分组,同时对ID相同字段的ScorE进行求和,GROUPby会自动对结果集进行排序所以答案选B
groupby的理解
B
(4)、电话号码表t_phonebook中含有100万条数据,其中号码字段PhoneNo上创建了唯一索引,且电话号码全部由数字组成,要统计号码头为321的电话号码的数量,下面写法执行速度最慢的是_________
A、selectcount(*)fromt_phonebookwherephoneno>
=‘321’andphoneno<
‘321A’
B、selectcount(*)fromt_phonebookwherephonenolike‘321%’
C、selectcount(*)fromt_phonebookwheresubstring(phoneno,1,3)=‘321’
A>
或者<
操作符会采用索引查找
B:
LIKE通配符在XXX%情况下会应用索引,如果在%xxx%等情况下不会应用索引
C:
采用函数处理的字段不能利用索引,例如substr()
这个题好像写成java的函数了
C
(5)、已知表tbl中字段land_ID建有索引,字段cust_id建有唯一索引,下列语句查询逻辑相同,其中执行效率最优的是
A、SELECT*FROMtbl
WHEREland_id>
750
or(cust_id=180orcust_id=560)
B、SELECT*FROMtbl
WHERE(cust_id=180orcust_id=560)
orland_id>
C、SELECT*FROMtblWHEREland_id>
UNION
SELECT*FROMtblWHEREcust_id=180
SELECT*FROMtblWHEREcust_id=560
D、SELECT*FROMtblWHEREland_id>
(
SELECT*FROMtblWHEREcust_id=180
UNIONALL
)
C/D相比较而言,D的执行效率更高一些
UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。
实际大部分应用中是不会产生重复的记录
采用UNIONALL操作符替代UNION,因为UNIONALL操作只是简单的将两个结果合并后就返回。
(6)、员工技能表Staffskill结构如下,Staff和Skill字段建有唯一约束
staff
VARCHAR2(10),
skill
VARCHAR2(10)
哪条语句可以查询同时拥有技能A和技能B的员工
A、selectstafffromStaffskillwhereskill=’A’ORskill=’B’
B、selectstafffromStaffskillwhereskill=’A’ANDskill=’B’
C、selectstafffromStaffskillwhereskill=’A’ORskill=’B’groupbystaff
D、selectstafffromStaffskillwhereskill=’A’ORskill=’B’groupbystaffhavingcount(*)>
D
(7)员工表staff表结构如下
staffNo
varchar2(10),
Email
varchar2(50)
哪一个SQL语句查询出没有E_mail地址的员工号
A、selectstaffnofromStaffwhereEmail=NULL
B、selectstaffnofromStaffwhereEmail<
>
NULL
C、selectstaffnofromStaffwhereEmailisnull
D、selectstaffnofromStaffwhereEmailisnotnull
(8)Oracle数据库启动步骤的顺序为
1.Mount
2.Open
3.Nomount
A、3-1-2
B、2-3-1
C、2-1-3
D、3-2-1
(9)存在两个结构相同的数据库表T1(col1,col2,col3)、T2(col1,col2,col3),写出一SQL语句将所有T1数据导入到T2表
A、selectcol1,col2,col3fromT1INTOT2(col1,col2,col3)
B、INSERTT1(col1,col2,col3)INTOT2(col1,col2,col3)
C、insertintoT2(col1,col2,col3)ASselectcol1,col2,col3fromT1;
D、insertintoT2(col1,col2,col3)selectcol1,col2,col3fromT1;
D
10)一个表的字段为varchar2,如果建表时没有指定长度,则默认长度为:
A、1
B、25
C、38
D、255
E、4000
F、建表时varchar2类型字段必须指定长度
F
(11)用TRUNCATE和DELETE语句删除表中数据的区别?
A、TRUNCATE命令不记录日志
B、TRUNCATE命令记录日志
C、DELETE命令不记录日志
(12)如下查询语句SELECTid_number,100/quantityfrominventory如果quantity为空,则查询语句的第二个字段将返回
A、aspace
B、anullvalue
C、avalueof0
D、avalueof100
E、thekeyworknull
B
(13)如下语句:
SELECTi.id_number,m.id_numberFROMinventoryi,manufacturerm
WHEREi.manufacturer_id=m.id_number
Orderbyinventory.description
执行时是错误的,请问以下措施哪个能够改正这个错误?
A在orderby的子句中使用表的别名
B在where子句中去掉表的别名
C在where子句中用表名代替表的别名
D在orderby子句中去掉表名,只要字段名称即可
(如果2张表中,不同时存在字段名为description的话,D答案也是正确的)
14)A表字段a类型int中有100条记录,值分别为1至100。
如下语句
SELECTaFROMA
WHEREABETWEEN1AND50
OR(AIN(25,70,95)
ANDABETWEEN25AND75)
则如下哪个值在这个sql语句返回的结果集中
A、30
B、51
C、75
D、95
15)变量v_time=‘23-MAY-00’,如下那条语句返回值为‘01-JAN-00’?
ASELECTROUND(V_TIME,’DAY’)FROMDUAL;
BSELECTROUND(V_TIME,’YEAR’)FROMDUAL;
CSELECTROUND(V_TIME,’MONTH’)FROMDUAL;
DSELECTROUND(TO_CHAR(V_TIME,’YYYY’))FROMDUAL;
16)关于索引(index)的说法哪些是错误?
A、创建索引能提高数据插入的性能
B、索引应该根据具体的检索需求来创建,在选择性好的列上创建索引
C、索引并非越多越好
D、建立索引可使检索操作更迅速
(17)指出下面sql语句的错误之处:
selectid_number“PartNumber”,sum(price)“price”frominventory
whereprice>
50
groupby“PartNumber”
orderby2;
A、orderby2
B、frominventory
C、whereprice>
D、groupby“PartNumber”
(18)如下语句
ifv_num>
5then
v_example:
=1;
elsifv_num>
10then
=2;
elsifv_num<
20then
=3;
39then
=4;
else
v_example:
=5;
如果v_num=37,则v_example的值是多少?
A、1
B、2
C、3
D、4
E、5
(19)如下语句:
begin
foriin1..8loop
ifi=2then
null;
else