SQL - 多表建立索引

1.建表
SQL - 多表建立索引

查看class 表的数据
SQL - 多表建立索引
查看 book 表单的数据
SQL - 多表建立索引
card 为外键, 关联2 个表
SQL - 多表建立索引

案例:

SQL - 多表建立索引

type 是ALL , row 20 性能差
SQL - 多表建立索引
加索引, 先给book 表的card 字段加索引
SQL - 多表建立索引
book 是右表, 加了索引。 所以性能比class 表高
SQL - 多表建立索引

将右表book 的index 删除, 将index 加在坐标class上
SQL - 多表建立索引
性能如下
不如将index 在在右表book 上

SQL - 多表建立索引
SQL - 多表建立索引
left join 将索引建立在 右表上, 因为左表一定都有, 右表按索引查询
反之亦然

三个表建立索引

建立第三个表
SQL - 多表建立索引

SQL - 多表建立索引

案例:
三表联查
SQL - 多表建立索引

SQL - 多表建立索引
性能如下
SQL - 多表建立索引

开始建立索引
将两个右侧的表加上索引
SQL - 多表建立索引
优化后性能如下:
SQL - 多表建立索引

SQL - 多表建立索引

结论
SQL - 多表建立索引