校史校情知识竞赛

在华师借书的地方不止有图书馆,还有各院系的(),需要办理借书证。

题目

在华师借书的地方不止有图书馆,还有各院系的(),需要办理借书证。

参考答案和解析
正确答案:资料室
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

对于图书管理数据库,求CIE单位借阅图书的读者的人数,下面SQL语句正确的是______。 SELECT______FROM借阅WHERE; 借书证号______

A.COUNT(DISTINCT 借书证号); IN(SELECT 借书证号 FROM 读者 WHERE 单位="CIE")

B.COUNT(DISTINCT 借书证号); IN(SELECT 借书证号 FROM 借阅 WHERE 单位="CIE")

C.SUM(DISTINCT 借书证号); IN(SELECT 借书证号 FROM 读者 WHERE 单位="CIE")

D.SUM(DISTINCT 借书证号); IN(SELECT 借书证号 FOR 借阅 WHERE 单位="CIE")


正确答案:A
解析:本题需要求的是CIE单位借阅图书的读者的人数。因此需要采用COUNT()函数来求读者人数,同时要保证借阅的读者是CIE单位的读者。通过以上分析可以知道所采用的SQL语句应该如下
  SELECT COUNT(DISTINCT 借书证号)FROM 借阅 WHERE
  借书证号 IN(SELECT 借书证号 FROM 读者 WHERE 单位="CIE")
  通过比对,可以知道选项A为正确选项。

第2题:

现有表:读者(读者姓名,读者单位,借书证号)借阅(借书证号,图书名称,图书作者,出版单位)查询没有借阅图书的读者的姓名和借书证号,正确的SQL语句是( )。

A. SELECT姓名FROM读者WHERE NOT EXISTS; (SELECT借书证号FROM借阅WHERE借阅.借书证号=读者借书证号)

B. SELECT姓名,借书证号FROM读者WHERE (SELECT*FROM借阅WHERE借阅.借书证号=读者.借书证号)。

C. SELECT姓名,借书证号FROM读者WHERE NOT EXISTS; (SELECT*FROM借阅WHERE借阅.借书证号=读者.借书证号)

D. SELECT姓名,借书证号FROM读者WHERE借阅=NULL (SELECT*FROM借阅WHERE借阅.借书证号=读者.借书证号)


正确答案:C
谓词EXISTS用来检验在子查询中是否有结果返回,本题中内层查询引用了外层查询的表,所以是内外层相关嵌套查询。

第3题:

假设图书馆业务规则:

读者需要凭借书证借阅图书,借书证有借书证号、姓名、年龄、单位等属性;

每一本图书有书号、书名、作者、出版社等属性;

每一本借出的图书有借书证号、书号、借出日期、应还日期。

试根据上述业务规则:

(1)设计E-R模型,要求E-R图中注明属性和联系的类型。

(2)将E-R模型转换成关系模型,用SQL语句创建表、定义完整性规则(字段类型及长度等信息自定义即可)。


答案:(1):

(2):

借书证(借书证号,姓名,年龄,单位),主码为{借书证号};

图书(书号,书名,作者,出版社),主码为{书号};

借阅(借书证号,书号,借出日期,应还日期),主码为{借书证号,书号},{借书证号}为外码,{书号}为外码。

第4题:

查询借阅了两本和两本以上图书的读者姓名和单位,应使用SQL语句

A.SELECT姓名,单位FROM读者; WHERE借书证号IN; (SELECT借书证号FROM借阅; GROUP BY借书证号HAVING COUNT(*)>=2)

B.SELECT姓名,单位FROM读者; WHERE借书证号EXISTS; (SELECT借书证号FROM借阅; GROUP BY借书证号HAVING COUNT(*)>=2)

C.SELECT 姓名,单位 FROM 读者; WHERE 借书证号 EXISTS; (SELECT 借书证号 FROM 借阅; GROUP BY 借书证号 WHERE COUNT(*)>=2)

D.SELECT 姓名,单位 FROM 读者; WHERE 借书证号 IN; (SELECT 借书证号 FROM 借阅; GROUP BY 借书证号 WHERE COUNT(*)>=2)


正确答案:A
解析:本小题考查了SQL查询功能的嵌套查询和分组与计算查询,分组与计算查询中,利用HAVING进一步限定分组的条件。HAVING子句和WHERE子句不矛盾,在查询中是先用WHERE子句限定元组,然后进行分组,最后再用HAVING子句限定分组。

第5题:

现有表:读者(读者姓名,读者单位,借书证号) 借阅(借书证号,图书名称,图书作者,出版单位) 从读者表和借阅表中查询借阅了两本及两本以上图书的读者姓名和读者单位,正确的SQL语句是( )。

A. SELECT读者姓名,读者单位FROM读者WHERE借书证号IN; (SELECT借书证号FROM借阅GROUP BY借书证号HAVING COUNT(*)>=2)

B. SELECT读者姓名,读者单位FROM读者WHERE借书证号EXISTS; (SELECT借书证号FROM借阅GROUP BY借书证号HAVING COUNT(*)>=2)

C. SELECT读者姓名,读者单位FROM读者WHERE借书证号IN; (SELECT借书证号FROM借阅GROUP BY借书证号WHERE COUNT(*)>=2)

D. SELECT读者姓名,读者单位FROM读者WHERE借书证号EXISTS; (SELECT借书证号FROM借阅GROUP BY借书证号WHERE COUNT(*)>=2)


正确答案:A
本题考查了SQL查询功能的嵌套查询和分组与计算查询。分组与计算查询中,利用HAVING进一步限定分组的条件。HAVING子句和WHERE子句不矛盾,在查询中是先用WHERE子句限定元组,然后进行分组,最后再用 HAVING子句限定分组。

第6题:

从借书I证表中删除借书证号为“1001”的记录,正确的SQL语句是

A) DELETE FROM借书证WHERE 借书证号=”1001”

B) DELETE FROM借书证FOR借书证号=”1001”

C)DROP FROM借书证wHERE借书证号=”1001”

D) DROPFROM借书证FOR借书证号:” 1001”


正确答案:A
【答案】:A
【知识点】:SQL中删除语句的书写格式
【解析】:SQL从表中删除数据的命令格式为:DELETE FROM 表名 [WHERE 条件],故选A。

第7题:

有以下两个表: 读者(借书证号C C、4),单位C(8),姓名C(、6),性别C(2),职称C(6),地址C(20)) 借阅(借书证号C(4),总编号C(6),借书日期D(8)) 要求分别求出各个单位当前借阅图书的读者人次,下面的SQL语句正确的是( )。 SELECT单位,__________FROM借阅,读者WHERE借阅.借书证号=读者.借书证号__________

A. COUNT(借阅.借书证号)CROUP BY单位

B. SUM(借阅.借书证号)GROUP BY单位

C. COUNT(借阅.借书证号)ORDER BY单位

D. COUNT(借阅.借书证号)HAVING单位


正确答案:A
题目中给出了两个数据表。本题要求的是各单位当前借阅图书的人次,因此必须采用COUNT命令来求得总人数,然后应该以各个单位进行分组操作,通过这两个方面的内容考虑,本题的正确答案应该是:
SELECT单位,COUNT(借阅.借书证号)FROM借阅,读者WHERE借阅.借书证号=读者.借书证号GROUP BY单位 因此应该选择A。

第8题:

对于图书管理数据库,检索当前至少借阅了5本图书的读者的姓名和职称。下面SQL语句正确的是______。 SELECT姓名,职称FROM读者WHERE借书证号IN;

A.(SELECT 借书证号 FROM 借阅 GROUP BY 总编号 HAVING COUNT(*)>=5)

B.(SELECT 借书证号 FROM 读者 GROUP BY 借书证号 HAVING COUNT(*)>=5)

C.(SELECT 借书证号 FROM 借阅 GROUP BY 借书证号 HAVING SUM(*)>=5)

D.(SELECT 借书证号 FROM 借阅 GROUP BY 借书证号 HAVING COUNT(*)>=5)


正确答案:D
解析:本题的要求是检索当前至少借阅了5本图书的读者的姓名和职称。因此在检索时需要按照读者进行分组,并且在每个组内需要保证至少借阅了5本书,因此该题目应该采用的SQL语句如下
  SELECT 姓名,职称 FROM 读者 WHERE 借书证号 IN;
   (SELECT 借书证号 FROM 借阅 GROUP BY 借书证号 HAVING COUNT(*)>=5)
  因此本题的正确选项应为D。

第9题:

对于图书管理数据库,检索借阅了《现代网络技术基础》一书的借书证号。下面SQL语句正确的是 ______. SELECT借书证号FROM借阅WHERE总编号=; ______. 借阅.借书证号:读者.借书证号 ______.

A.COUNT(借阅.借书证号) GROUPBY单位

B.SUM(借阅.借书证号) GROUPBY单位

C.COUNT(借阅,借书证号)ORDER BY单位

D.COUNT(借阅,借书证号).HAVING单位


正确答案:B
解析:本题是嵌套查询,内层查询完成的是对图书表中书名为,现代网络技术基础”书的总编号,将查出的总编号作为给外层查询WHERE后的条件,外层循环完成的是在借阅表中总编号为内层查询查出来的结果的记录的借书证号。

第10题:

查询所有借阅过“中国出版社”图书的读者的姓名和所在单位( )。

A.SELECT姓名,所在单位FROM借书证,图书,借书记录 WHERE图书.索书号=借书记录.索书号AND 借书证.借书证号=借书记录.借书证号AND出版社=”中国出版社”

B.SELECT姓名,所在单位FROM图书,借书证 WHERE图书.索书号=借书证.借书证号AND出版社=”中国出版社”

C.SELECT姓名,所在单位FROM图书,借书记录 WHERE图书.索书号=借书记录.索书号AND出版社=”中国出版社”

D.SELECT姓名,所在单位FROM借书证,借书记录 WHERE借书证.借书证号=借书记录.借书证号AND出版社=”中国出版社”


正确答案:A
A。【解析】题干中要查询借书人的单位和姓名,要用到3个表,其中图书表和借书记录表通过字段索书号进行连接,借书证表和借书记录表通过借书证号连接,同时借阅的是“中国出版社”,所以出版社=”中国出版社”,所以答案选择A。

更多相关问题