版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MySQL基础面试题及详细答案(通俗易懂版)一、基础概念类1、什么是MySQL?它的核心特点有哪些?答案:MySQL是一款开源的关系型数据库管理系统,也是目前互联网项目中使用最广泛的数据库之一。主要用来存储、管理、查询项目中的各类业务数据。核心特点:开源免费,使用成本低,个人和企业商用都很友好;轻量高效、运行稳定,读写速度快,适配中小型项目、小程序、网站等绝大多数场景;支持标准SQL语句,通用性强,上手简单;支持多用户、多线程,可多人同时操作数据库,互不冲突;跨平台,Windows、Linux、Mac系统都能部署运行。2、什么是关系型数据库?和非关系型数据库有什么简单区别?答案:关系型数据库是通过表、行、列的结构化形式存储数据,数据表之间可以建立关联关系,遵循固定的数据格式和约束规则,MySQL、Oracle、SQLServer都属于这类。简单区别:关系型数据库(MySQL):数据结构化、格式统一、支持事务、数据安全性高,适合存储订单、用户、商品等核心业务数据;非关系型数据库(Redis、MongoDB):无固定表结构,存储灵活,读写速度极快,不支持复杂事务,适合存储缓存、日志、临时数据。3、MySQL中常用的数据类型有哪些?各自适用场景?答案:日常开发最常用的分为三类:数值类型int:整数类型,用于存储ID、年龄、数量等整数数据;decimal:高精度小数,专门用于金额、价格,避免浮点精度丢失问题;float/double:普通小数,用于非高精度的小数数据,如评分、比例。字符串类型varchar:可变长度字符串,最常用,用于用户名、手机号、地址等短文本;char:固定长度字符串,适合长度固定的数据,如手机号、身份证号,查询速度更快;text:长文本,用于文章内容、备注、详情描述等大段文字。时间日期类型datetime:存储年月日时分秒,精确到秒,适合记录创建时间、更新时间;date:只存储年月日;timestamp:时间戳,会自动根据时区转换,适合记录数据变动时间。4、MySQL中主键、唯一键、外键的区别?答案:主键(primarykey)唯一键(unique)外键(foreignkey)二、SQL语句实操类(高频)1、SQL的四大核心语句是什么?分别作用?答案:核心就是增、删、改、查(CRUD),是日常开发使用最多的语句:SELECT(查):查询数据,使用率最高,支持条件查询、排序、分页、联表查询;INSERT(增):向数据表中新增数据;UPDATE(改):修改表中已存在的数据,必须加WHERE条件,否则会更新全表;DELETE(删):删除表数据,同样必须加WHERE条件,否则清空全表数据。2、简单写一条条件查询、分页、排序的SQL语句答案:场景:查询用户表中状态正常的用户,按创建时间倒序,每页10条数据(第1页)sql
SELECTid,username,phone,create_timeFROMuser
WHEREstatus=1
ORDERBYcreate_timeDESC
LIMIT0,10;说明:LIMIT起始下标,条数;第一页从0开始,每页10条。3、WHERE和HAVING的区别?答案:执行顺序不同:WHERE是分组(GROUPBY)之前过滤数据;HAVING是分组之后过滤数据;使用范围不同:WHERE不能使用聚合函数(sum、count、max等);HAVING专门用来过滤聚合函数的结果;效率不同:WHERE先过滤再分组,减少分组数据量,效率更高;HAVING是先分组再过滤,效率偏低。示例:统计订单金额大于1000的用户sql
SELECTuser_id,SUM(amount)AStotalFROMorder
GROUPBYuser_id
HAVINGtotal>1000;4、LEFTJOIN、RIGHTJOIN、INNERJOIN的区别?答案:多用于联表查询,核心区别是保留的数据范围不同:INNERJOIN(内连接):只返回两张表中匹配成功的数据,两边没有对应数据就不展示;LEFTJOIN(左连接):以左表为基准,左表所有数据全部展示,右表匹配不到数据则显示为空;RIGHTJOIN(右连接):以右表为基准,右表所有数据全部展示,左表匹配不到数据则显示为空。日常开发中LEFTJOIN使用最多。5、DELETE和TRUNCATE删除数据的区别?答案:删除范围不同:DELETE可以带WHERE条件删除指定数据;TRUNCATE只能清空整张表,无法条件删除;效率不同:TRUNCATE清空表速度极快;DELETE逐行删除数据,大数据量表删除很慢;自增列重置不同:TRUNCATE会重置表的自增主键,清空后新增数据从1开始;DELETE删除所有数据,自增主键会延续之前数值;事务支持不同:DELETE属于DML语句,支持事务,可以回滚;TRUNCATE属于DDL语句,不支持事务,删除后无法恢复。三、索引基础类(面试高频)1、什么是索引?作用是什么?答案:索引可以理解为数据表的目录,和书本目录作用一样,能快速定位数据位置。核心作用:大幅提升查询数据的速度,减少数据库扫描的数据行数。缺点:会占用磁盘空间,同时会降低增、删、改的效率,因为数据变动时,索引也需要同步更新。2、MySQL常用索引类型有哪些?答案:主键索引:默认创建,唯一非空,查询效率最高;唯一索引:字段值唯一,允许为空,防止数据重复;普通索引:最基础的索引,无唯一性限制,仅用于加速查询;联合索引:对多个字段建立一个索引,适合多条件联合查询场景。3、什么是联合索引的最左匹配原则?答案:联合索引遵循最左优先规则,比如给a、b、c三个字段建立联合索引(a,b,c):查询条件包含最左字段a、a+b、a+b+c,都可以命中索引;查询条件只有b、c或者b+c,无法命中索引,会走全表扫描。日常开发中设计联合索引,要把高频查询、区分度高的字段放在最左边。4、哪些情况会导致索引失效?答案:日常开发最常见的几种场景:索引字段使用了函数、运算,比如WHERELEFT(name,2)='张三'、age+1=20;模糊查询以%开头,比如WHEREnameLIKE'%三';(%结尾可以走索引)字段类型隐式转换,比如字符串字段不加引号、数字字段加了引号;使用OR连接条件,前后字段有一个没有索引,整体索引失效;违反联合索引最左匹配原则。四、事务基础类1、什么是数据库事务?事务的四大特性(ACID)?答案:事务是用来保证一组数据库操作要么全部成功,要么全部失败,避免出现数据不一致的情况,最典型场景就是转账、下单扣库存。四大特性ACID:原子性(Atomicity):事务不可拆分,所有操作整体执行,成功则全部生效,失败则全部回滚;一致性(Consistency):事务执行前后,数据库数据状态始终合法、一致,不会出现异常数据;隔离性(Isolation):多个事务同时执行时,互相之间互不干扰;持久性(Durability):事务提交成功后,数据永久保存,即使服务器宕机,数据也不会丢失。2、MySQL默认的事务隔离级别是什么?答案:MySQLInnoDB引擎默认隔离级别是可重复读。简单说明四个隔离级别(从低到高):读未提交:能看到其他事务未提交的数据,问题最多,几乎不用;读已提交:只能看到其他事务已提交的数据,会出现不可重复读问题;可重复读:同一事务内,多次查询结果一致,解决了大部分数据异常问题,MySQL默认使用;串行化:最高隔离级别,事务串行执行,无并发问题,但效率极低。五、引擎与基础优化1、MySQL两大核心存储引擎?InnoDB和MyISAM区别?答案:MySQL最常用的两个引擎,目前默认使用InnoDB。核心区别:事务支持:InnoDB支持事务、支持回滚;MyISAM不支持事务;锁机制:InnoDB是行锁,并发能力强;MyISAM是表锁,操作时锁住整张表,并发差;外键:InnoDB支持外键;MyISAM不支持;崩溃恢复:InnoDB支持故障自动恢复,数据安全性高;MyISAM崩溃后容易数据损坏;适用场景:InnoDB适合增删改查频繁、并发高的业务表;MyISAM适合只读、查询多、极少修改的静态数据表。2、简单说几个日常能用的MySQL优化小技巧
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高中英语选择性必修第四册Unit 1 Section Ⅱ语法复习课教学设计
- 黑龙江哈尔滨市双城区兆麟中学2025-2026学年高一下学期5月期中考试数学试题(教师版)
- 2025年医疗器械经营质量管理规范现场检查原则试题及答案
- 2025年医院护士招聘笔试题库及答案
- 2025年意识形态应知应会考试题及答案
- 2025年职业病危害及预防措施试题及参考答案
- 2025新安全生产法题库(附答案解析)
- 2026年江苏水利水电安全员B证历年考试模拟题及答案详解
- 上海市沪教版高中化学必修第一册第7章化学反应测试卷及答案
- 北师大版六年级英语下册词汇专项训练习题及答案
- 一次性医疗用品管理课件
- 公司员工上岗证管理制度
- T/CECS 10350-2023除臭收集用轻质高强度玻璃钢盖
- 列车开行方案列车开行方案高速铁路运营技术64课件
- 江苏省2025年中职职教高考文化统考数学试题
- 2024年人教版六年级语文上册《第4单元语文园地四》教学课件
- 春季中学田径运动会开幕式议程
- 2024年上半年教师资格证《初中化学》真题及答案
- SH∕T 3097-2017 石油化工静电接地设计规范
- DB 3406T 022-2024市政道路建筑垃圾填筑 路基施工技术规范
- 急诊科护理典型案例分析
评论
0/150
提交评论