MySQL期末试题的答案

《MySql高级数据分析》期末测试
一、选择题(总分50分,每题2分)
1、使用SQL语句进行分组检索时,为了去掉不满足条件的分组,应当(B)
A)使用WHERE子句
B)在GROUP BY后面使用HAVING 子句
C)先使用WHERE子句,再使用HAVING子句
D)先使用HAVING 子句,再使用WHERE子句

2、储蓄所有多个储户,储户在多个储蓄所存取款,储蓄所与储户之间是(B)
A.一对一的联系 B.一对多的联系
C.多对一的联系 D.多对多的联系

3、视图是一个“虚表”,视图的构造基于(A)
A.基本表 B.视图
C.基本表或视图 D.数据字典

4、SQL语言中,SELECT语句的执行结果是(B)
A.属性 B.表 C.元组 D.数据库

5、设有关系模式EMP(职工号,姓名,年龄,技能)。假设职工号唯一,每个职工有多项技能,则EMP表的主键是( A )
A.职工号 B.姓名,技能 C.技能 D.职工号,技能

6、在SQL语句中,与表达式"仓库号 NOT IN(“wh1”,“wh2”)"功能相同的表达式是(D )
A)仓库号=“wh1” AND 仓库号=“wh2” B)仓库号!=“wh1” OR 仓库号!= “wh2”
C)仓库号=“wh1” OR 仓库号=“wh2” D)仓库号!=“wh1” AND 仓库号!=“wh2”

7、在SQL SELECT语句中用于实现关系的选择运算的短语是(D )
A)FOR B)WHILE
C)WHERE D)CONDITION

8、根据关系模式的完整性规则,一个关系中的主键(C )。
A.不能有两个 B.不能成为另一个关系的外部键
C.不允许空值 D.可以取空值
9、若规定工资表中基本工资不得超过5000元,则这个规定属于(A )。
A.关系完整性约束 B.实体完整性约束
C.参照完整性约束 D.用户定义完整性

10、关系数据库中,外码(ForeignKey)是( C)
A)在一个关系中定义了约束的一个或一组属性
B)在一个关系中定义了缺省值的一个或一组属性
C)在一个关系中的一个或一组属性是另一个关系的主码
D)在一个关系中用于唯一标识元组的一个或一组属性

11、以下哪些命令是DDL语句( B )
A. CREATE DATABASE命令
B. ALTER TABLE命令
C. SELECT 命令
D. INSERT命令

12、在SQL中,删除视图用__C___。
A、DROP SCHEMA命令 B、CREATE TABLE命令
C、DROP VIEW命令 D、DROP INDEX命令

13、SQL语句中修改表结构的命令是___C___。
A、MODIFY TABLE B、MODIFY STRUCTURE C、ALTER TABLE
D、ALTER STRUCTURE

14、定位第一条记录上的命令是___A___。
A、limit 1 B、GO BOTTOM C、GO 6 D、limit 1,1

15、在关系模型中,实现"关系中不允许出现相同的元组"的约束是通过___B___。
A、候选键 B、主键 C、外键 D、超键

16、DELETE FROM S WHERE 年龄>60语句的功能是__A____。
A、从S表中彻底删除年龄大于60岁的记录
B、S表中年龄大于60岁的记录被加上删除标记
C、删除S表
D、删除S表的年龄列

17、在命令窗口执行SQL命令时,若命令要占用多行,续行符是___C___。
A、冒号(😃 B、分号(😉 C、逗号(,) D、连字符(-)

18、设有图书管理数据库:
  图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))
  读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
  借阅(借书证号C(4),总编号C(6),借书日期D(8))
  对于图书管理数据库,查询0001号借书证的读者姓名和所借图书的书名。
SQL语句正确的是____A__。
SELECT 姓名,书名 FROM 借阅,图书,读者 WHERE;借阅.借书证号=“0001” AND;______


A、图书.总编号=借阅.总编号 AND 读者.借书证号=借阅.借书证号
  B、图书.分类号=借阅.分类号 AND读者.借书证号=借阅.借书证号
  C、读者.总编号=借阅.总编号 AND读者.借书证号=借阅.借书证号
D、图书.总编号=借阅.总编号 AND

19、设有图书管理数据库:
  图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))
  读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
  借阅(借书证号C(4),总编号C(6),借书日期D(8))
对于图书管理数据库,分别求出各个单位当前借阅图书的读者人次。下面的SQL语句正确的是___A___。
SELECT 单位,______ FROM 借阅,读者 WHERE;借阅.借书证号=读者.借书证号 ______
A、COUNT(借阅.借书证号) GROUP BY 单位
B、SUM(借阅.借书证号) GROUP BY 单位
C、COUNT(借阅.借书证号) ORDER BY 单位
D、COUNT(借阅.借书证号) HAVING 单位

  1. 设有图书管理数据库:
      图书(总编号C(6),分类号C(8),书名C(16),作者C(6),出版单位C(20),单价N(6,2))
      读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20))
      借阅(借书证号C(4),总编号C(6),借书日期D(8))
      对于图书管理数据库,检索借阅了《现代网络技术基础》一书的借书证号。下面SQL语句正确的是__B__
      SELECT 借书证号 FROM 借阅 WHERE 总编号=;____________________
      A、(SELECT 借书证号 FROM 图书 WHERE 书名=“现代网络技术基础”)
      B、(SELECT 总编号 FROM 图书 WHERE 书名=“现代网络技术基础”)
      C、(SELECT 借书证号 FROM 借阅 WHERE 书名=“现代网络技术基础”)
    D、(SELECT 总编号 FROM 借阅 WHERE 书名=“现代网络技术基础”)

21 、用一组数据“准考证号:200701001、姓名:刘亮、性别:男、出生日期:1993-8-1"来描述某个考生信息,其中"出生日期"数据可设置为(A )。
A. 日期/时间型 B.数字型 C.货币型 D.逻辑型

22、如下图所示,"书目信息"表中被排序的字段是(D )。

A.分类号 B.书名 C.出版日期 D.价格

23、下列描述正确的是( B )。
A.一个数据库只能包含一个数据表 B.一个数据库可以包含多个数据表
C.一个数据库只能包含两个数据表 D.一个数据表可以包含多个数据库

24、如下图所示的关系数据表中,主键最好定为 ( A )。

A.姓名 B.借书证号 C.所教学科 D. T2005001

25、在SELECT语句中,只列出前几行的关键字是( A )。
A.Limit B. distinct C. delete D. from

二、上机题(总分50分)
2.1、数据详情:
表名:pros 产品表

表名:saler 销售商表

表名:pro_sal 销售表

2.2、基于product数据库的三个表,用SQL语言完成以下查询
(1)查询所有产品的产品编号和销售额,并将销售额增加10%后设置别名为“增长额" (3分)
查询语句:

select 产品编号,销售额,销售额*1.1 as 增长额 from pro_sal

查询结果:

(2)查询“华中、华北、东南”地区的销售商名称和地区。(3分)

查询语句:

select 销售商名称,地区 from saler

查询结果:

(3)查找销售商名称的第二个字符是’建’并且只有三个字符的销售商编号和名称。(3分)
查询语句:

select 销售商名称,销售商编号 from saler where substring(销售商名称,2,1)='建' and 销售商名称 like '_建_'

查询结果:

(4)查询有电话的销售商信息。(3分)
查询语句:

select * from saler where 电话<>"";

查询结果:

(5)查询销售额在2000到5000的并且数量大于100的产品编号和销售日期。(3分)
查询语句:

select * from pro_sal where 销售额 <= 5000 and 销售额>=2000 and 数量 >100

查询结果:(本无结果,为达到效果另插入一条数据)

(6)求销售了产品的销售商总数。(3分)
查询语句:

select count(销售商编号) from pro_sal

查询结果:

(7)求产品编号为“0001”的产品的平均销售额、最高销售额、最低销售额。(3分)
查询语句:

select 产品编号,avg(销售额) as 平均,max(销售额) as 最高,min(销售额) as 最低 from pro_sal where 产品编号='0001'

查询结果:

(8)查询销售产品种类超过2类的销售商编号和种类数。并按购买种类数从大到小排序。
查询语句:(3分)

elect * from(select 销售商编号,count(产品编号) as 销售种类 from pro_sal group by 销售商编号 order by count(产品编号) desc)as 类别号 where 销售种类 >2

查询结果:

(9)查询销售商的销售商编号和名称、销售的产品编号和数量。(3分)
查询语句:

select a.销售商编号,a.销售商名称,b.产品编号,b.数量 from saler a,pro_sal b where a.销售商编号 = b.销售商编号

查询结果:

(10)查询至少销售过1次“0001”号产品的销售商编号和购买次数,并按购买次数多少降序排列。(3分)
查询语句:

select a.销售商编号,count(*) 购买次数 from pro_sal a where a.产品编号=0006 group by a.销售商编号 order by count(*) desc

查询结果:

(11)查询与‘喜田有限公司’在同一地区的销售商名称,地区和负责人。(4分)
查询语句:

select 销售商名称,地区,负责人 from saler where 
地区=(select 地区 from saler where 销售商名称='喜田有限公司')

查询结果:

(12)查询销售商的销售情况,要求包括销售了产品的销售商和没有销售的销售商,显示他们的销售商编号、销售商名称、产品编号、销售日期。(4分)
查询语句:

select a.销售商编号,a.销售商名称,b.产品编号,b.销售日期 from saler a,pro_sal b where a.销售商编号=b.销售商编号

查询结果:

(13)查询销售额小于平均销售额的产品编号、产品名称和价格、销售额。(4分)
查询语句:

select a.产品编号,a.产品名称,a.价格,b.销售额 from pros a, pro_sal b where a.产品编号=b.产品编号 and 销售额<(select avg(销售额) from pro_sal)

查询结果:

(14)查询没被销售商销售过的产品信息。(4分)
查询语句:

select * from pros p where p.产品编号 not in(select ps.产品编号 from pro_sal ps )

查询结果:

(15)查询销售了“0001”但没有销售“0002”号产品的销售商编号和产品编号。(4分)
查询语句

select ps.销售商编号,产品编号 from pro_sal ps where ps.产品编号=0001 and ps.销售商编号 not in (select 销售商编号 from pro_sal ps where ps.产品编号=0002)

查询结果

  • 29
    点赞
  • 195
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
MySQL数据库考试试题答案 题目1:介绍一下MySQL数据库 MySQL是一个开源的关系型数据库管理系统,由瑞典MySQL AB公司开发。它支持多种操作系统,包括Windows、Linux和Unix等,同时也支持多种编程语言,如C、C++、Python和PHP等。MySQL数据库采用客户机/服务器架构,可以处理大量数据同时具有高效性能和可靠性。 题目2:MySQL数据库的数据类型有哪些?请分别举例说明。 MySQL数据库的数据类型包括整型、浮点型、日期时间型、字符型等。例如,整型包括TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,浮点型包括FLOAT和DOUBLE,日期时间型包括DATE、TIME和DATETIME,字符型包括CHAR、VARCHAR和TEXT等。 题目3:如何创建一个新的数据库? 可以通过MySQL的CREATE DATABASE语句来创建新的数据库,语法如下: CREATE DATABASE database_name; 题目4:如何创建一个新的数据表? 可以使用MySQL的CREATE TABLE语句来创建新的数据表,语法如下: CREATE TABLE table_name ( column1 datatype, column2 datatype, column3 datatype, ... ); 题目5:如何向数据库中插入新的数据? 可以使用MySQL的INSERT INTO语句向数据库中插入新的数据,语法如下: INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2, value3, ...); 题目6:如何更新数据库中的数据? 可以使用MySQL的UPDATE语句来更新数据库中的数据,语法如下: UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition; 题目7:如何删除数据库中的数据? 可以使用MySQL的DELETE FROM语句来删除数据库中的数据,语法如下: DELETE FROM table_name WHERE condition; 题目8:如何查询数据库中的数据? 可以使用MySQL的SELECT语句来查询数据库中的数据,语法如下: SELECT column1, column2, ... FROM table_name WHERE condition; 以上是关于MySQL数据库的考试试题答案,希望能对大家理解MySQL数据库有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值