首页/ 学科题库/ mysql/ MySQL索引与优化专题测试
mysql 模拟试卷

MySQL索引与优化专题测试

21 题 45 分钟 难度:★★

本试卷涵盖以下核心知识点:

索引基础(6题)

  • 索引的基本概念与作用
  • 创建索引的语法与方法
  • 查看索引的方法
  • 主键自动创建索引机制
  • 索引的代价与收益

索引类型(6题)

  • 普通索引、唯一索引、主键索引的特点
  • 组合索引的概念与最左匹配原则
  • 全文索引的用途
  • 各索引类型的适用场景

索引优化策略(5题)

  • 覆盖索引的概念与优势
  • 组合索引顺序优化原则
  • 索引失效场景分析
  • 索引维护建议

查询优化(2题)

  • 子查询改写为JOIN的优化
  • 常用查询优化技巧汇总

执行计划分析(2题)

  • EXPLAIN type列的含义
  • 执行计划Extra列解读

试卷习题(21 题)

参考答案在文末
判断题
1
判断题

主键索引是特殊的唯一索引,不允许NULL值,而唯一索引允许NULL值。

A

对

B

错

2
判断题

定期使用ANALYZE TABLE更新表统计信息,可以帮助优化器做出更好的索引选择决策。

A

对

B

错

3
判断题

索引可以提高查询速度,但会增加写操作(INSERT、UPDATE、DELETE)的开销和占用额外存储空间。

A

对

B

错

4
判断题

组合索引比多个单列索引更高效,可以减少索引数量,且遵循最左匹配原则。

A

对

B

错

单选题
5
单选题

以下哪种情况会导致索引失效?

A

WHERE name = '张三'

B

WHERE YEAR(create_time) = 2024(在索引列上使用函数)

C

WHERE name LIKE '张%'

D

WHERE id = 100

6
单选题

如何查看表的索引信息?

A

SHOW INDEXES FROM table_name 或 SHOW INDEX FROM table_name

B

GET INDEX table_name

C

LIST INDEX table_name

D

DISPLAY INDEX table_name

7
单选题

普通索引(Normal Index)的特点是什么?

A

值必须唯一

B

值可以重复,是最基本的索引类型,无特殊限制

C

只用于主键

D

不允许NULL值

8
单选题

唯一索引(Unique Index)的特点是什么?

A

值可以重复

B

值必须唯一,不允许重复值(但允许多个NULL)

C

只用于外键

D

自动生成值

9
单选题

MySQL的主键(PRIMARY KEY)会自动创建索引吗?

A

不会自动创建索引

B

会自动创建索引,且是聚簇索引

C

需要手动创建索引

D

只创建普通索引

10
单选题

组合索引(复合索引)是什么?

A

只包含一个列的索引

B

包含多个列的索引,多个列组合在一起建立索引

C

多个单列索引的组合

D

主键和外键的组合

11
单选题

组合索引(name, age, city),以下哪个查询无法使用该索引?

A

WHERE name = '张三'

B

WHERE name = '张三' AND age = 20

C

WHERE name = '张三' AND age = 20 AND city = '北京'

D

WHERE age = 20 AND city = '北京'

12
单选题

为什么建议将子查询改写为JOIN?

A

子查询语法错误

B

子查询可能产生临时表效率较低,JOIN可以利用索引更高效

C

JOIN语法更简单

D

子查询不支持索引

13
单选题

MySQL创建索引的基本语法是什么?

A

ADD INDEX idx_name ON table(column)

B

CREATE INDEX idx_name ON table(column)

C

NEW INDEX idx_name ON table(column)

D

INSERT INDEX idx_name ON table(column)

14
单选题

EXPLAIN执行计划中type列显示ALL表示什么?

A

使用了索引查询效率最高

B

全表扫描效率最低应优化添加索引

C

使用了范围查询

D

使用了JOIN连接

15
单选题

什么是覆盖索引?它的优势是什么?

A

索引覆盖整张表

B

查询所需的所有列都在索引中,无需回表查询数据行

C

索引覆盖所有列

D

索引覆盖所有表

16
单选题

数据库索引的主要作用是什么?

A

增加存储空间

B

提高查询速度,快速定位数据

C

减少数据量

D

自动清理数据

多选题
17
多选题

MySQL支持哪些索引类型?

A

普通索引(INDEX):最基本的索引,值可重复

B

唯一索引(UNIQUE):值必须唯一,允许NULL

C

主键索引(PRIMARY KEY):值唯一且非空,聚簇索引

D

组合索引:多列组合建立索引

E

全文索引(FULLTEXT):用于文本全文搜索

18
多选题

以下哪些是常用的查询优化技巧?

A

使用EXPLAIN分析执行计划

B

避免SELECT *只查询需要的列

C

使用LIMIT限制返回行数

D

小表驱动大表优化JOIN

E

利用索引优化ORDER BY避免filesort

填空题
19
填空题

索引类型:值可重复,值必须唯一,值唯一且非空,组合索引多列组合遵循最左匹配原则。

20
填空题

索引优化:的列建索引效果好,组合索引,避免回表,避免函数和类型转换导致索引失效。

21
填空题

索引主要作用是,创建语法,查看索引用,主键自动创建聚簇索引。

参考答案
1.正确 2.正确 3.正确 4.正确 5.B 6.A 7.B 8.B 9.B 10.B 11.D 12.B 13.B 14.B 15.B 16.B 17.A;B;C;D;E 18.A;B;C;D;E 19.普通索引;唯一索引;主键索引 20.选择性高;高选择性列放前面;覆盖索引 21.提高查询速度;CREATE INDEX;SHOW INDEX
想在手机上在线作答这套卷子?
使用微信 卷王开发者小程序/App,首页顶部扫一扫识别二维码,即可限时作答并自动判分。
了解产品 App
← 上一套 MySQL查询语句专题测试 下一套 → MySQL索引深度与性能调优