后端岗位面试题 · 技术原理 · SQL
题库中标记为“后端”的结构化面试题。
共 89928 道真题 · 当前筛选命中 1096 道 · 更新 2026-08-05
筛选题目已选:技术原理 · SQL
考察点
技术栈
第 1 题对于SQL查询商品信息,like "%name%" 和多个join 你会怎么优化? 考察SQL查询优化、索引使用和复杂查询的调优能力第 2 题MyBatis的#{}和${}有什么区别?哪个是预编译且能防止SQL注入的安全写法? 考察MyBatis参数占位符的底层机制与SQL注入防护意识第 3 题请编写一条 MySQL 查询语句,筛选出成绩总分排名前 80 的学生。 考察 SQL 聚合、排序与排名筛选能力,重点是 LIMIT 与聚合函数的搭配第 4 题请说明 left join 和 inner join 的区别,并举例说明什么场景适合用 left join? 考察对连接语义的理解和实际应用能力第 5 题如何判断是否使用索引,请结合执行计划说明 考察索引选择、执行计划解读和SQL优化能力第 6 题模糊查询(如 LIKE '%value%')是否会导致索引失效?为什么? 考察对模糊查询索引使用原理及索引失效条件的理解第 7 题COUNT()、COUNT(1)、COUNT(某一列)三者的区别,平常常用哪种? 考察对SQL聚合函数COUNT不同用法的理解与实战选择第 8 题在分批迁移数据时,为了保证每批次拉取数据的执行效率都比较高,ID应该怎么来? 考察分批拉取数据的ID策略设计与性能权衡第 9 题数据库连接查询中左表右表的选择 考察SQL连接查询中表顺序与连接类型对结果集的影响第 10 题请完整阐述一条 SQL 语句从客户端发送到 MySQL 服务器后,在服务端内部的整个执行流程是怎样的? 考查对 MySQL 服务端核心组件及 SQL 执行全链路机制的理解。第 11 题请说明在 MySQL 环境下,你通常采用哪些步骤和策略来分析和优化一条执行缓慢的 SQL 语句? 考查候选人对 MySQL 慢 SQL 定位、分析及优化的系统性方法和实践经验。第 12 题在 SQL 中如何进行多表查询?请说明常用方式及适用场景。 考察多表关联查询的掌握程度与场景判断能力第 13 题什么是覆盖索引?它为什么能加快查询?使用覆盖索引有哪些注意点? 考察对覆盖索引原理、收益和局限的理解第 14 题请详细说一说开窗函数,比如 sum() over() 的用法。 考察窗口函数的语法、执行逻辑与典型应用场景第 15 题请分别谈谈你对 Java、Scala 和 SQL 的了解程度及各自的应用场景。 考察编程语言与数据库知识的广度、深度和应用理解第 16 题多表查询的方式有哪些? 考察对 SQL 多表连接方式及其适用场景的理解第 17 题前端传来一个姓氏,如何从后端查询学生表中姓氏开头的同学?请写出SQL查询语句。 考察模糊查询SQL编写能力,特别是前缀匹配的写法第 18 题SQL 查询慢,一般如何定位和优化? 考察对慢 SQL 的分析方法、优化思路及基础执行计划的掌握第 19 题一个表给a列加了索引,给了两个SQL语句,一个是select ... where a like 'abc%',另一个是like '%abc',哪个走了索引? 考察B+树索引前缀匹配原则和LIKE查询的索引使用判断第 20 题你在优化慢 SQL 时,会如何一步步定位出慢在哪里? 考察慢 SQL 排查的方法论、工具使用与系统性分析能力