Mysql复习题库(仅供参考)

这是一份关于MySQL的复习题库,涵盖了选择题、填空题和简答题,包括用户管理、查询语句、表结构修改、索引、事务、数据库管理系统等核心概念,适合面试准备。

题库
一、选择题
1.删除用户的命令是( B )
A. drop user
B. delete user
C. drop root
D. truncate user
2.联合查询使用的关键字是(A)
A. UNION B. JOIN
C. ALL D. FULL
3.下列SQL语句中,修改表结构的是( A )
A. ALTER B. CREATE
C. UPDATE D. INSERT
4.在SQL查询时,如果需要去掉查询结果中的重复组,应使用( B )关键字。
A. UNIQUE B. DISTINCT
C. CHECK D. MINUS
5.下列删除语句可以删除表结构的是( B )
A. delete B. drop
C. truncate D. modify
6.在SELECT语句中使用MAX(列名)时,列名应该( D )
A. 必须是字符型 B. 必须是数值型
C. 必须是数值型或字符型 D. 不限制数据类型

7.下列关于主键和唯一键说法错误的是?( D )
A. 主键不能重复,不能为空,
B. 唯一键不能重复,可以为空。
C. 一个表只有一个主键
D. 一个表只有一个唯一键
8.在一个含有group by的查询sql中,同时存在having和where,sql在解析执行的时候,先执行的是哪一个?(B )
A. having B. where
C. group by D. order by
9.mysql中唯一索引的关键字是( C )
A. fulltext index B. only index
C. unique index D. index
10.说出where、group by、having、order by 的执行顺序(B )
A. group by >having >order by >where
B. where >group by >having >order by
C. where >having >group by >order by
D. where >order by >group by >having
11. 数据库查询时,哪些内容区分大小写?(A )
A. 表名 B. 字段名
C. 字段中的内容 D. 数据库名
12. 数据库系统的核心是( B )
A. 数据库 B. 数据库管理系统
C. 数据模型 D. 软件工具
13.在mysql中,以下哪种方式可以开启一个事务( A )
A. START TRANSACTION
B. START
C. FIRST TRUNCATE
D. BEIGN
14.创建用户的命令是(B )
A. join user B. create user
C. create root D. mysql user
15.以下不是SQL语句中的聚合函数的是(D )
A. SUM B. AVG
C. COUNT D. DISTINCT
16.mysql中唯一索引的关键字是( C )
A. fulltext index
B. only index
C. unique index
D. index
17.一件商品仅有一个分类,一个分类有多件商品,商品与分类关系是(C)。
A. 1:1 B. 1:n C. n:1 D. n:m
18.从“商品”表里查询出价格高于产品名称为“自热火锅”的产品价格的记录,此SQL语句为?( D )
A. SELECT * FROM 商品 WHERE 价格 >‘自热火锅’;
B. SELECT * FROM 商品 WHERE 价格 >
(SELECT * FROM 商品 WHERE 自热火锅 >’ 自热火锅’);
C. SELECT * FROM 商品 WHERE EXISTS 产品名称=’自热火锅’;
D. SELECT * FROM 商品 WHERE 价格 >(SELECT 价格FROM 商品 WHERE 产品名称=’自热火锅’);
19.有订单表orders,包含用户信息userid, 产品信息 productid, 以下
( )语句能够返回至少被订购过两回的productid?
A. select productid from orders where count(productid)>1
B. select productid from orders where max(productid)>1
C. select productid from orders where having count(productid)>1 group by productid
D. select productid from orders group by productid having count(productid)>1
20.数据库有一个试卷表,如何找出平均得分小于 85 的所有试卷(D )
A. SELECT * FROM paper group by score having auj(score) < 85;
B. SELECT * FROM paper group by score having avj(score) < 85;
C. SELECT * FROM paper group by score having aug(score) < 85;
D. SELECT * FROM paper group by score having avg(score) < 85;

二、填空题
1.计算字段的累加和的函数是__SUM________。
2.语句select “1+2”;显示的结果是_____1+2
3.select (null<=>null) is null 的结果为_____0

4.当某字段要使用auto_increment的属性时,该字段必须是______int_____类型的数据。
5.
!=< >都可以代表不等于。
6.如果MYSQL服务名为MYSQL5,则在Windows的命令窗口中,启动MYSQL服务的指令是_______net start mysql5

7.使用 desc table_name_______命令可以查看表的结构。
8. 使用____show index_____命令可以看到为表格定义的所有索引。
9.和___________都可以代表不等于。
10. 表格的每一行都由主键唯一标识 , 一个表只有一个_______主键

11. 使用_____________命令可以看到为表格定义的所有索引。
12. 列设置为 AUTO INCREMENT 时,是什么意思_____自增字段

13.delete from student where id>5 该代码的含义是______删除学生表中id大于5的学生信息

14.Table ‘a1’already exists这个错误信息的含义是____表a1已经存在___________。

二、简答题
1.请简述HAVING与WHERE的区别
WHERE在分组之前过滤数据
HAVING在分组之后过滤数据
2.详述SQL语言的分类。
数据自定义语言:简称DDL(Data Definition language)用来定义数据库对象,数据库,表,列等,关键字:create alteer drop等
数据操作语言:简称DCL(Data Manipulation language)用来对数据库中的记录进行更新,关键字:insert delete,update等
数据控制语言:简称DCL(Data Control language)用来定义数据库访问权限和安全级别及创建用户
数据查询语言:简称DQL(Data Query language)用来查询数库库中表的记录,关键字select from where等
3.简述索引的种类。
按组织方式分类
.按实现算法分类
按是否唯一分类
按列数来分类

4.简述什么是事务?事物都有什么特性?
事务是将一系列的sql操作封装在一个单元中,这个单元叫做事务
原子性
一致性
隔离性
持久性

5.在SQL语句中可以用如下语法:IF(条件表达式, 表达式1, 表达式2)
请简述其作用。
6.MYSQL中的五种约束是?
主键约束 唯一约束 默认约束 外键约束 .非空约束

三、设计题
1.现有部门表(DEPT)
DEPTNO (主键)部门编号
DNAME 部门名称
LOC 部门地址
员工表:(EMP)
EMPNO (主键)员工编号
ENAME 员工姓名
JOB 员工工作
MGR 员工直属领导编号
HIREDATE 入职时间
SAL 工资
COMM 奖金 DEPTNO (对应dept表的外键)部门编号
1.找出从事clerk工作的员工的编号、姓名、部门号。
select empno,ename,deptno from emp where job = ‘clerk’
2.检索出奖金多于基本工资60%的员工信息。
select * from emp where comm > sal * 0.6
3.找出10部门的经理、20部门的职员 或者既不是经理也不是职员但是工资高于2000元的员工信息。
select * from emp where deptno = 10 and job=‘MANAGER’ or deptno = 20 and job = ‘CLERK’ or job!=‘MANAGER’ and job != ‘CLERK’ and sal > 2000 ;## job not in (‘MANAGER’,‘CLERK’)
4.找到名字长度为6个字符的员工信息。
select * from emp where length(ename) = 6
2.现有如下几张表
学生表 student
学号sno 姓名sname 年龄age 性别sex
S001 赵壹 20 男
S002 钱贰 20 男
S003 孙叁 21 男
S004 李肆 18 女
S005 周伍 19 男
S006 吴陆 20 女
教师表 teacher
编号tno 姓名tname
T001 郑柒
T002 王捌
T003 冯玖
课程表course
编号cno 课程名cname 教师编号tno
C001 JAVASE T002
C002 JAVA WEB T002
C003 ORACLE T001
C004 SQL SERVER 2000 T001
C005 JAVASCRIPT T003
成绩表sc
编号sno 课程编号cno 分数score
S001 C001 78.9
S002 C002 80.8
S003 C003 46.9
S004 C001 82.5
S005 C002 59
1、查询平均成绩大于60 分的同学的学号和平均成绩。
SELECT sno,AVG(score) FROM sc GROUP BY sno HAVING AVG(score)>60

2、查询所有同学的学号、姓名、选课数、总成绩。
select st.StuId,st.StuName,count(sc.StuId),sum(sc.Stuscore) from student as st,score as sc where st.StuId = sc.StuId group by sc.StuId;
3、查询姓“周”的老师的个数。
select count(TeaId) from Teacher where TeaName like ‘周%’;
4、查询每门课程被选修的学生数。
select Course.courseName,count(Score.courseId) from Score,Course where Score.courseId = Course.courseId group by Score.courseId;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值