id 雷同,执行顺序由上至下
id 不同,假如是子查询,id 的序号会递增,id 值越大优先级越高,越先被执行
id 假如雷同,可以以为是一组,从上往下顺序执行;在所有组中,id 值越大,优先级越高,越先执行衍生 = DERIVED 关注点: id 号每个号码,表示一趟独立的查询。一个 sql 的查询趟数越少越好。
select_type 说明
type字段说明
最告急的就是 type 字段,type 值类型如下:
all — 扫描全表数据;
index — 遍历索引;
range — 索引范围查找;
index_subquery — 在子查询中利用 ref;
unique_subquery — 在子查询中利用 eq_ref;
ref_or_null — 对 null 进行索引的优化的 ref;
fulltext — 利用全文索引;
ref — 利用非唯一索引查找数据;
eq_ref — 在 join 查询中利用主键或唯一索引关联;
const — 将一个主键放置到 where 后面作为条件查询, MySQL 优化器就能把这次查询优化转化为一个常量,怎样转化以及何时转化,这个取决于优化器,这个比 eq_ref 效率高一点。
利用索引,Using index 代表表示相应的 select 操纵中利用了覆盖索引(Covering Index),避免访问了表的数据行,效率不错! 假如同时出现 using where,表明索引被用来执行索引键值的查找;假如没有同时出现 using where,表明索引只是 用来读取数据而非利用索引执行查找
这种情况是在利用 order by 关键字的时间,假如待排序的内容无法通过索引直接直接进行排序,mysql就有大概进行文件排序。但是由于查询次数过多的话,对于排序的效率还是有一定的影响的。
所以,根据自己的情况进行优化改进即可。你有好的建议欢迎评论区交换讨论。
让自己的步调平稳的运行。
写到末了,一直在技术路上前行…
昨天,删去;本日,夺取;明天,积极。