性别字段(可能值:0=保密|1=男|2=女)要不要添加索引?

  先说结论:在绝大多数情况下,不建议『单独』给性别字段添加索引。
 
  原因是优化器在大多数查询场景几乎肯定会忽略这个索引,添加索引只会白白浪费索引存储空间和降低写性能(INSERT/UPDATE/DELETE需要维护索引)。
 
  只有在一些非常罕见的场景适合单独给性别字段添加索引:
 
  ⑴、数据分布极度倾斜,如99.9%的记录都是0值;
 
  ⑵、只查询性别字段本身,如 SELECT `gender` FROM 或 SELECT COUNT(`gender`) FROM 。
 
  性别字段加索引更多是和其它字段组成联合索引,而不是单独加索引,如 (`city`, `gender`) ,注意优先将高基数字段(city字段)放在左侧。

Copyright © 2025 码农人生. All Rights Reserved