广州Y行信用卡中心大数据部数据开发岗笔试题

【Linux】广州Y行信用卡中心大数据部数据开发岗笔试题

1.SELECT语句的完整语法比较复杂,但至少包括的部分:(B)

A.SELECT INTO

B.SELECT FROM

C.SELECT GROUP

D.仅SELECT

2.SELECT语句的完整语法比较复杂,使用关键字(A)可以把重复行屏蔽。

A.DISTINCT

B.UNION

C.ALL

D.TOP

3.将多个查询结果返回一个结果集合的运算时,使用:B

A.JOIN

B.UNION

C.INTO

D.LIKE

4.如果在SELECT语句中使用聚合函数时,一定在后面使用:(A)

A.GROUP BY

B.COMPUTE BY

C.HAVING

D.COMPUTE

5.若用如下的SQL语句创建表SC:

CREATE TABLE SC(S CHAR(6) NOT NULL,C CHAR(3) NOT NULL,SCORE INTEGER,NOTE VARCHAR(20)),

向SC表插入如下行时,(B)行可以被插入。

A.(‘201009′,’111’,60,必修)

B.(‘200823′,’101’,NULL,NULL)

C.(NULL,’103′,80,’选修’)

D.(‘201132’,NULL,86,”)

6.分析以下的SQL语句,执行的返回结果是(C):

SELECT MANU_ID
FROM INVENTORY
WHERE MANU_ID LIKE '%N\%P\%O%' ESCAPE '\';'

A.所有包含’NPO’记录

B.所有包含’N\P\O’记录

C.所有包含’N%P%O’记录

D.所有包含’%N\P\O%’记录

7.以下SQL哪行有错误:(C)

SELECT DEPT_NO
FROM EMP
GROUP BY DEPTNO
HAVING COUNT(DEPT_NO)=
(SELECT MAX(COUNT(DEPT_NO))
FROM EMP
GROUP BY DEPT_NO
);

A.3

B.4

C.5

D.7

E.都没错

8.Oracle以下(A)语句从表TABLE_NAME中按字段COUNT_CNT倒序提取前10条记录。

A.SELECT * FROM (SELECT * FROM TABLE_NAME ORDER BY COUNT_CNT DESC NULLS LAST) T WHERE ROWNUM<=10;

B.SELECT * FROM TABLE_NAME WHERE ROWNUM<=10;– 未排序,直接提取原表逻辑结构前10条记录

C.SELECT * FROM TABLE_NAME WHERE ROWNUM<=10 ORDER BY COUNT_CNT DESC NULLS LAST;– 先按原表逻辑结构提取前10条记录再倒序排序

D.SELECT TOP 10 FROM TABLE_NAME ORDER BY COUNT_CNT DESC;– Oracle不支持select top语句

9.有关系S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#,GRADE)。

其中S#是学号,SNAME是学生姓名,SEX是性别,C#是课程号,CNAME是课程名称。

要查询选修“数据库”课程的全体男生姓名的SQL语句是:SELECT SNAME FROM S,C,SC WHERE(A):

A.S.S#=SC.S# AND C.C#=SC.C# AND S.SEX=’男’ AND C.CNAME=’数据库’;

B.S.S#=SC.S# AND C.C#=SC.C# AND S.SEX IN ‘男’ AND C.CNAME IN ‘数据库’;

C.S.SEX=’男’ AND C.CNAME=’数据库’;

D.S.SEX IN ‘男’ AND C.CNAME IN ‘数据库’;

10.HAVING和WHERE子句以及GROUP BY可以在同一SELECT语句中使用,其正确的先后顺序是(A)

A.WHERE,GROUP BY,HAVING

B.WHERE,HAVING,GROUP BY

C.HAVING,GROUP BY,WHERE

D.GROUP BY,WHERE,HAVING

11.以下SQL返回的运行结果(C)

SELECT CASE WHEN NULL=NULL THEN ‘Yup’ ELSE ‘Nope’ END AS RESULT FROM DUAL;

A.NULL

B.Yup

C.Nope

12.在Oracle数据库的逻辑结构中有以下组件:

A.表空间 B.数据块 C.区 D.段 

这些组件从大到小的顺序依次是:(B)

A.A->B->C->D

B.A->D->C->B

C.A->D->B->C

D.D->A->C->B

13.在发出启动数据库的命令,实例和数据库经过怎样的过程最终打开?(B)

A.OPEN,NOMOUNT,MOUNT

B.NOMOUNT,MOUNT,OPEN

C.MOUNT,OPEN,NOMOUNT

D.NOMOUNT,OPEN,MOUNT

14.UNIX环境下显示进程相关的命令是(A)

A.ps

B.su

C.ln

D.kill

15.UNIX环境下改变文档和目录属性的命令是(A)

A.chown

B.chmod

C.chgrp

D.touch

16.UNIX环境下分页方式查看文件内容的命令是(C)

A.ls

B.cat

C.more

D.touch

17.假如需要找出/etc/my.conf文件属于哪个包,可以执行:(C)

A.rpm -q /etc/my.conf

B.rpm -requires /etc/my.conf

C.rpm -qf /etc/my.conf

D.rpm -q|grep /etc/my.conf

18.在bash中,export命令的作用是(C)

A.在子shell中执行命令

B.使在子shell中可以使用命令历史记录

C.为其他应用程序设置环境变量

D.提供NFS分区给网络中的其他系统使用

19.如果你的umask设置为022,默认创建新文件权限为(C)

A.-rw-r–r–

B.-rwxr–r–

C.-rwxr-xr-x

D.-rw-r–r-x

20.哪个命令用来显示系统各个分区中inode的使用情况(A)

A.df -i

B.df -H

C.free -b

D.du -a -c /

21.如何删除一个非空子目录/tmp/20190501(B)

A.del /tmp/20190501/*

B.rm -rf /tmp/20190501

C.rm -rf /tmp/20190501/*

D.rm -ra /tmp/20190501/*

22.对所有用户的变量设置,应该放在哪个文件下(A)

A./etc/profile

B./etc/bashrc

C.~/.bash_profile

D./etc/skel/.bashrc

23.在vi中退出不保存的命令是(D)

A.:q

B.:w

C.:wq

D.:q!

24.Oracle数据库,有哪几类索引,分别有什么特点?

B-Tree索引;位图索引;特定于该列只有几个枚举值的情况;函数的索引:经常对某个字段的查询带有函数操作;

分区索引和全局索引:适用于分区表

25.Union与Union All的区别?

Union对结果集去重,执行效率比Union all低;Union all不会去重,执行效率比Union高。

26.表tab中有100W行记录,主键为字段id,其中有100条重复记录,请写出快速删除重复数据的脚本。

delect from tab
where rowid in
(select max(rowid) from tab
group by id
having count(1)>=2);

27.假设有表Customers,数据如下:

Id Name ReferredBy
1 John Doe NULL
2 Jane Smith NULL
3 Anne Jenkins 2
4 Eric Branford NULL
5 Pat Richards 1
6 Alice Barnes 2

请查出ReferredBy1的记录。

--ReferredBy为数字类型
select c.* from Customers c
minus
select c.* from Customers c
where c.ReferredBy=1;
--ReferredBy为字符类型
select c.* from Customers c
where c.ReferredBy'1';

28.假设有商品表goods,数据如下:

Good_type goods_name price goods_flag
手机 华为 2999
手机 苹果 7999
手机 荣耀 2399
水果 车厘子 79
水果 葡萄 18
水果 苹果 12
电脑 金士顿16G 499

…………

根据商品大类Goods_type对商品金额price从小到大排序,

前20%为低档,20%~85%为中档,于85%为打上标。

-- 三个子查询,一个表
select g.*,
case when rownum=(select count(*) from goods)*0.85 then '高档'else '中档' end as goods_flag
from (select * from goods order by price) g
-- 两个子查询,两个表
select g.*,
case when rownum=c.cnt*0.85 then '高档'else '中档' end as goods_flag
from (select * from goods order by price) g,(select count(*) as cnt from goods) c;

29.Linux检查一个端口是否被占用的命令是?一旦被占用如何解决这个问题?

lsof -i:端口号

netstat -ntulp | grep 端口号

显示该被占用端口号对应的PID号,

使用kill -9 PID杀死进程。

30.Linux新建一个文件有哪些命令可以实现?

cat>文件名

touch 文件名

31.Linux查看进程和调度的命令分别是什么?

查看进程:ps -ef

调度:crontab -l

32.用shell脚本实现:把一个目录(/tmp)下的文件夹去出,并保存到/tmp/dirlist.txt中。

ls -ltr /tmp/|grep ^d >/tmp/dirlist.txt
for file in 'ls /tmp/'do if [-d /tmp/$file ]then echo $file >>/tmp/dirlist.txt n done

33.文件路径/data/in/下有业务系统上传的数据,文件格式为“文件类型_工号_上传日期.zip”,文件列表如下:

广州Y行信用卡中心大数据部数据开发岗笔试题

请使用shell脚本列出日期20181215所有上传人员的名单。

ls /data/in/shuju_*_20181215.zip|awk -F _'{print $2}'

注:客观题(选择题)答案全对,主观题27、28已测试验证,但28缺少用UPDATE的题解,如有错误和如需补充望指正。

原文地址:https://blog.csdn.net/Paladin_Roland/article/details/113620185

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:【数据库】【Linux】广州Y行信用卡中心大数据部数据开发岗笔试题 

本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/173bf82f63.html