联合索引,能够缩小查询范围的字段放在第一个,比如表sensor_coc_repay_feature存近一个月数据两千多万条,建立联合索引(time,distinct_id),
按照查询 select * from sensor_coc_repay_feature where distinct_id = %s and time>‘2022-02-20’ ,此时然后按照联合索引最左匹配有使用到了time,distinct_id,但是经过time查询后的数据还会是全表,mysql会认为该查询还不如走全表查询,造成索引失效,因此需要把联合索引这样建(distinct_id,time),这样查询的时候经过distinct_id直接就能将数据范围缩小到百级这样效率大大提升。
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档