• 哪些情况需要创建索引
    1) 主键自动建立唯一索引
    2) 频繁作为查询条件的字段应该创建索引
    3)查询与其它表关联的字段,外键关系建立索引(多表关联查询)
    4)单键、组合索引的选择问题,组合索引性价比更高(mysql自动选择最优)
    5)查询中排序的字段,排序字段若通过索引去访问将大大提高排序速度
    6)查询中统计或者分组字段((分组order by )包含(排序group by))

  • 哪些情况不要创建索引
    1) 表记录太少
    2) 增删改的表或者字段(例如电商项目的用户余额)
    3) Where条件里用不到的字段不创建索引
    4) 过滤性不好的不适合建索引(手机号、身份证号之类过滤性好)