MySQL高级查询专题测试
考察知识点
本试卷涵盖以下核心知识点:
视图与存储过程(9题)
- 视图的基本概念与特点
- 创建视图的语法与方法
- 视图的优点与更新限制
- 存储过程的概念与优点
- 存储过程参数类型(IN/OUT/INOUT)
- 存储过程的基本语法
子查询(8题)
- 子查询的基本概念
- WHERE子句中的子查询(IN)
- EXISTS子查询的使用
- FROM子句中的子查询(派生表)
- IN与EXISTS的区别
- 子查询执行顺序
联合查询(4题)
- UNION的基本概念与用法
- UNION与UNION ALL的区别
- UNION使用规则
- UNION与JOIN的区别
💡 参考答案在文末
判断题
1
IN子查询先执行完整子查询获取所有结果列表,EXISTS子查询逐行判断发现匹配就停止,通常EXISTS效率更高。
2
子查询会先执行,然后将结果传递给外层查询使用。
3
视图可以简化复杂查询、隐藏底层表结构、提供数据访问控制,但不存储数据不能提高查询性能。
4
UNION ALL效率比UNION高,因为UNION需要额外操作去除重复行,如果确定无重复应使用UNION ALL。
5
UNION合并的每个SELECT查询必须有相同数量的列,对应列的数据类型必须兼容。
6
存储过程的优点包括:预编译执行效率高、减少网络传输、封装业务逻辑、提高安全性、代码复用。
单选题
7
子查询在WHERE子句中使用IN的作用是什么?
8
FROM子句中的子查询(派生表)是什么作用?
9
什么样的视图可以进行INSERT、UPDATE、DELETE操作?
10
MySQL存储过程(Stored Procedure)是什么?
11
MySQL创建视图的基本语法是什么?
12
MySQL存储过程支持哪些参数类型?
13
什么是子查询?
14
创建存储过程的基本语法结构是什么?
15
EXISTS子查询的作用是什么?
16
MySQL视图(View)是什么?
17
UNION和UNION ALL的区别是什么?
18
MySQL的UNION操作符的作用是什么?
多选题
19
关于视图和存储过程的对比,哪些描述是正确的?
填空题
20
子查询类型:____________子句用IN判断值在列表中,____________判断是否存在结果,____________子句作为派生表,相关子查询引用外层列需多次执行。
21
视图是____________基于SELECT定义,用____________创建;存储过程是____________,用CREATE PROCEDURE创建,支持IN/OUT/INOUT参数。
参考答案
1.正确
2.正确
3.正确
4.正确
5.正确
6.正确
7.B
8.B
9.B
10.B
11.B
12.B
13.B
14.B
15.B
16.B
17.B
18.B
19.A;B;C;D;E
20.WHERE;EXISTS;FROM
21.虚拟表;CREATE VIEW;预编译SQL集合
想在手机上练习这套试卷?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码