MySQL常见面试题(表连接类型,count(*),count(列),count(1)的区别,索引,存储引擎,锁,优化)
部分内容展示: MySQL支持的表连接类型分为分为:内连接、左外连接、右外连接。Oracle中支持全外连接,但MySQL不支持。 笛卡尔积:多表连接查询出来的结果,不去除任何未关联数据。例如表A有N条数据,表B有M条数据,查询出来的结果有N*M条。 内连接:使用inner join,表示查询出来两个表具有关联的数据,无关联性的数据不会查询出来。也可以直接使用多表查询 左外连接:使用left outer join,表示即使左表存在未关联数据,也被查询出来。在left outer join左侧的表叫做左表,右侧的表叫做右表。(能够查询出关联数据和左表没有关联的数据,在左表的下方进行展示) 右外连接:使用right outer join,表示即使右表存在未关联数据,也被查询出来。在left outer join右侧的表叫做右表。(能够查询出关联数据和右表没有关联的数据,在右表的下方进行展示) MySQL是世界上最流行的开源关系型数据库管理系统之一,其面试题涵盖了多个方面,包括表连接类型、COUNT函数的不同用法、索引类型以及优化策略等。以下是对这些知识点的详细阐述: 1. **表连接类型** - **内连接(Inner Join)**:返回两个表中存在匹配关系的记录。使用`INNER JOIN`关键字或者直接使用多表查询实现。 - **左外连接(Left Outer Join)**:返回左表的所有记录,即使在右表中没有匹配的记录。右表中匹配的记录将显示,而没有匹配的记录则用NULL填充。 - **右外连接(Right Outer Join)**:与左外连接相反,返回右表的所有记录,左表中没有匹配的记录用NULL填充。 - **全外连接(Full Outer Join)**:Oracle支持,但MySQL不支持。全外连接会返回左右两表的所有记录,没有匹配的部分两边都会用NULL填充。 2. **COUNT函数的区别** - **COUNT(*)**:统计表中的所有行数,包括NULL值。 - **COUNT(列)**:统计指定列中非NULL的行数。 - **COUNT(1)**:在InnoDB引擎中,与COUNT(*)性能相似,都用于统计行数,包括NULL值。但在某些场景下,如统计非空特定列,COUNT(列)会更快,因为它仅计算特定列的非NULL值。 3. **索引** - **聚集索引(Clustered Index)**:索引和数据行存储在一起,索引的顺序决定了数据行的物理存储顺序。主键索引就是聚集索引。 - **非聚集索引(Non-Clustered Index)**:索引结构与数据行分开,索引指向数据行的实际位置。非聚集索引不决定数据行的物理存储顺序。 4. **第三范式(3NF)** - 数据库设计遵循第三范式,每个非主属性直接依赖于主键,避免冗余和数据不一致。例如,订单表和客户表应分离,订单表只保存客户编号,客户信息在独立的客户表中。 5. **MySQL索引优点** - **提升查询速度**:通过索引可以快速定位到所需数据,减少磁盘I/O操作。 - **加速排序与分组**:索引可以帮助快速执行ORDER BY和GROUP BY语句。 6. **索引类型** - **单列索引**:针对单个列创建的索引,有主键索引、唯一索引和普通索引。 - **组合索引**:针对多个列创建的索引,可以提高对多列查询的效率。 7. **执行计划(Execution Plan)** - 查询优化器会生成执行计划,展示如何执行SQL语句,包括使用的索引、执行顺序等。通过`EXPLAIN`关键字可以查看执行计划,帮助分析和优化查询性能。 8. **索引创建的考虑因素** - **选择性**:索引列的唯一性越高,选择性越好,查询性能提升更明显。 - **更新频率**:频繁更新的列不适合创建索引,因为更新索引会带来额外开销。 - **数据类型**:字符串类型的列创建索引通常比整型慢,因为字符串比较复杂。 - **表大小**:小表可能无需索引,大表通过索引能显著提高查询性能。 了解并熟练掌握这些MySQL知识点对于数据库设计和优化至关重要,尤其在处理大数据量时,正确的索引策略和连接类型选择能够显著提升系统的响应速度和整体性能。
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/octet-stream](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![application/octet-stream](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pptx](https://img-home.csdnimg.cn/images/20210720083543.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/release/download_crawler_static/88214428/bg1.jpg)
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/93ce551a93104e78a7a64924e245afa6_keep__me.jpg!1)
- 粉丝: 279
- 资源: 33
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)