MySQL深度学习第三日有哪些重点内容?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3478个文字,预计阅读时间需要14分钟。
B+树索引的正确使用,并非越多越好。索引创建过多,MySQL维护的代价越高。例如,SQL查询未能完全利用到索引,创建索引的意义不大。适用条件:表x,创建索引a、b、c。主键y。
索引并不是越多越好,索引创建越多,MySQL维护的代价越高,如果SQL未能完全使用到索引,创建索引的意义是不大的。
适用条件表x,创建索引a,b,c。主键y。
全值匹配select * from x where a = '' and b = '' and c = ''
当我们创建的索引abc,此时我们有a,b,c字段的索引是可以匹配到的,不论你a,b,c字段顺序如何,优化器会自动优化为索引的顺序。
匹配左边的列select * from x where a = '' and d = ''
我们在此情况可以用到a的索引,但是如果第一个为b或c字段就不行。
匹配列前缀select * from x where a like 'aaa%' and b like 'bbb%' # 不行'%aaa'或'%aaa%'
我们可以利用建立的索引找到a和b字段,因为a索引和b索引按照前缀排序的。
本文共计3478个文字,预计阅读时间需要14分钟。
B+树索引的正确使用,并非越多越好。索引创建过多,MySQL维护的代价越高。例如,SQL查询未能完全利用到索引,创建索引的意义不大。适用条件:表x,创建索引a、b、c。主键y。
索引并不是越多越好,索引创建越多,MySQL维护的代价越高,如果SQL未能完全使用到索引,创建索引的意义是不大的。
适用条件表x,创建索引a,b,c。主键y。
全值匹配select * from x where a = '' and b = '' and c = ''
当我们创建的索引abc,此时我们有a,b,c字段的索引是可以匹配到的,不论你a,b,c字段顺序如何,优化器会自动优化为索引的顺序。
匹配左边的列select * from x where a = '' and d = ''
我们在此情况可以用到a的索引,但是如果第一个为b或c字段就不行。
匹配列前缀select * from x where a like 'aaa%' and b like 'bbb%' # 不行'%aaa'或'%aaa%'
我们可以利用建立的索引找到a和b字段,因为a索引和b索引按照前缀排序的。

