练习书上例子并说明其用意
1、p130的疑问
2、什么是空间列类型索引?有什么作用?RTREE的原理是什么?
3、查询alter table增加索引的语法,并使用。
4、p131的疑惑
5、说出设计索引的原则有哪些?主键的设计原则有哪些?
6、不理解最左前缀的意思。我感觉像是表达说,创建一个多列索引就可以减少索引数量,这是猜测,不确定是不是这样。p131的描述看不懂。根据p133的“把选择度更高的列放到索引的更左侧”猜测这个就是最左前缀原则的含义。但是为什么呢?
7、索引设计的误区有哪些?
8、索引设计的一般步骤,选择度是什么意思?区分度?猜测是,比如描述一个人,有一对眼睛,这个肯定没法找到这个人,如果说眼睛里面有像万花筒血轮眼的图案,那就很好确定这个人了。
9、慢查询分析?执行计划分析?索引使用统计?
有群友说,执行计划分析就是explain SELECT…
群友:explain这个单词是是解释的意思,也就是让数据库解释下这个语句会怎么执行,数据库就把执行计划拿出来糊弄你了
慢查询文档解释:https://dev.mysql.com/doc/refman/8.0/en/slow-query-log.html
10、hash索引的特征有哪些?为什么不能加速orderby操作?p133的疑惑。和btree索引的区别是什么?怎么创建对应的索引。对hash索引使用范围查询会怎样?
怎么创建对应的索引:
@黑色的灯 谢谢,那就是通过使用using hash/btree来指定。自己试一下。
11、尝试用一下insert into xxx select * from xxx
12、不可见索引的含义,如何使用?作用是什么?查询优化器是什么?
13、正序索引和倒序索引的区别和联系?为什么要有倒序索引?如何使用?
14、 什么是groupby操作的隐式排序?
答:在8.0版本之前,使用group by xxx 会隐含一个order by asc。8.0之后,返回记录按照插入顺序。