SQL面试题及详细答案150道(136-150) --- 性能优化与数据库设计篇
《前后端面试题
》专栏集合了前后端各个知识模块的面试题,包括html,javascript,css,vue,react,java,Openlayers,leaflet,cesium,mapboxGL,threejs,nodejs,mangoDB,MySQL,Linux… 。
文章目录
- 一、本文面试题目录
-
-
- 136. 索引的类型有哪些?分别适用于什么场景?
- 137. 联合索引的“最左前缀原则”是什么?举例说明。
- 138. 哪些情况下索引会失效?(至少列举5种)
- 139. 如何使用EXPLAIN分析SQL语句的执行计划?
- 140. 如何优化“分页查询”的性能?(例如:大数据量下的LIMIT优化)
- 141. 如何优化JOIN查询的性能?
- 142. 如何优化GROUP BY和ORDER BY的性能?
- 143. 什么是覆盖索引?如何利用覆盖索引提高查询效率?
- 144. 数据库事务的隔离级别有哪些?各解决了什么问题(脏读、不可重复读、幻读)?
- 145. 悲观锁和乐观锁的区别是什么?如何实现乐观锁?
- 146. 如何设计一个电商数据库(包含用户、商品、订单、支付等模块)?
- 147. 什么是分库分表?分库和分表的依据是什么?
- 148. 如何处理数据库中的大表(例如:千万级记录)?
- 149. 如何设计一个高并发的秒杀系统数据库?
- 150. 如何进行数据库的备份与恢复?不同备份方式的优缺点是什么?
-
- 二、150道面试题目录列表
一、本文面试题目录
136. 索引的类型有哪些?分别适用于什么场景?
- 原理说明:索引是数据库中提高查询效率的数据结构,不同类型的索引适用于不同的数据特征和查询场景。
- 常见类型及适用场景:
- 普通索引(INDEX):最基础的索引,无唯一性约束。
适用场景:频繁用于WHERE
、JOIN
、ORDER BY
条件的字段(如用
- 普通索引(INDEX):最基础的索引,无唯一性约束。