0
点赞
收藏
分享

微信扫一扫

tomcat详解

Spinach菠菜 2023-06-19 阅读 94

此笔记为尚硅谷MySQL高级篇部分内容

目录

一、索引失效案例

二、关联查询优化

1、采用左外连接

2、采用内连接

3、join语句原理

1.驱动表和被驱动表

2.Simple Nested-Loop Join(简单嵌套循环连接)

3.Index Nested-Loop Join(索引嵌套循环连接)

4.Block Nested-Loop Join(块嵌套循环连接)

5.Join小结

6.Hash Join

4、小结

三、子查询优化

四、排序优化

filesort算法:双路排序和单路排序

五、GROUP BY优化

六、优化分页查询

七、优先考虑覆盖索引

1、什么是覆盖索引?

2、覆盖索引的利弊 

八、如何给字符串添加索引

1、前缀索引

2、前缀索引对覆盖索引的影响 

九、索引下推 ICP

1、索引条件下推使用前后

2、ICP的开启/关闭

3、 ICP的使用条件 

十、普通索引 vs 唯一索引

1、查询过程

2、更新过程

3、change buffer的使用场景

十一、 其它查询优化策略

1、EXISTS 和 IN 的区分

2、COUNT(*)与COUNT(具体字段)效率

3、关于SELECT(*)

4、LIMIT 1 对优化的影响

5、多使用COMMIT

十二、淘宝数据库,主键如何设计的?

1、自增ID的问题

2、业务字段做主键

3、淘宝的主键设计

4、推荐的主键设计


一、索引失效案例


1、全值匹配我最爱

意思是创建联合索引多个索引同时生效。

2、最佳左前缀法则

在MySQL建立联合索引时会遵守最佳左前缀匹配原则,即最左优先,在检索数据时从联合索引的最左边开始匹配。

如果索引了多列,要遵守最左前缀法则。指的是查询从索引的最左前列开始并且不跳过索引中的列。

3、主键插入顺序

4、计算、函数、类型转换(自动或手动)导致索引失效

5、类型转换导致索引失效

6、范围条件右边的列索引失效

7、不等于(!= 或者<>)索引失效

8、is null可以使用索引,is not null无法使用索引

9、like以通配符%开头索引失效

10、OR 前后存在非索引的列,索引失效

11、数据库和表的字符集统一使用utf8mb4

12、练习及一般性建议

练习:假设:index(a,b,c)

二、关联查询优化


1、采用左外连接

2、采用内连接

3、join语句原理

1.驱动表和被驱动表

2.Simple Nested-Loop Join(简单嵌套循环连接)

3.Index Nested-Loop Join(索引嵌套循环连接)

4.Block Nested-Loop Join(块嵌套循环连接)

5.Join小结

6.Hash Join

从MySQL的8.0.20版本开始将废弃BNLJ,因为从MySQL8.0.18版本开始就加入了hash join默认都会使用hash join

4、小结

三、子查询优化


四、排序优化


filesort算法:双路排序和单路排序

五、GROUP BY优化


六、优化分页查询


七、优先考虑覆盖索引


1、什么是覆盖索引?

2、覆盖索引的利弊 

八、如何给字符串添加索引


1、前缀索引

2、前缀索引对覆盖索引的影响 

九、索引下推 ICP


面试常问

1、索引条件下推使用前后

看个灵魂画图 

2、ICP的开启/关闭

3、 ICP的使用条件 

十、普通索引 vs 唯一索引


从性能的角度考虑,你选择唯一索引还是普通索引呢?选择的依据是什么呢?

1、查询过程

2、更新过程

3、change buffer的使用场景

十一、 其它查询优化策略


面试常问

1、EXISTS 和 IN 的区分

2、COUNT(*)与COUNT(具体字段)效率

3、关于SELECT(*)

4、LIMIT 1 对优化的影响

5、多使用COMMIT

十二、淘宝数据库,主键如何设计的?


面试中可能会问你主键如何设计,面试官主要看你的设计思想想法

1、自增ID的问题

2、业务字段做主键

为了能够唯一地标识一个会员的信息,需要为 会员信息表 设置一个主键。那么,怎么为这个表设置主键,才能达到我们理想的目标呢? 这里我们考虑业务字段做主键。

3、淘宝的主键设计

在淘宝的电商业务中,订单服务是一个核心业务。请问, 订单表的主键 淘宝是如何设计的呢?是自增ID吗?

打开淘宝,看一下订单信息:

4、推荐的主键设计

高级篇笔记PDF自取

链接:https://pan.baidu.com/s/1pVqrTwIZFoED77i-EFmw6g?pwd=3333 
提取码:3333

举报

相关推荐

0 条评论