首页  >  问答  >  正文

mysql 优化之性别优化

数据库有十几万用户 , 其中男性占90% , sex = 1
如: select uid member where sex =1 and xxx xx
那么 这个sex 就会全表扫描, 这样怎么处理

怪我咯怪我咯2710 天前716

全部回复(3)我来回复

  • 巴扎黑

    巴扎黑2017-05-18 10:53:08

    这种情况在sex上建立索引区分度太低,没有什么太多作用。还是考虑在其他字段上建立索引吧,比如后面的xxx

    回复
    0
  • ringa_lee

    ringa_lee2017-05-18 10:53:08

    在sex上面建立单列索引,能够避免全表扫描,如果效率不高,可以考虑以sex开头加上后面的字段建立联合索引

    回复
    0
  • 阿神

    阿神2017-05-18 10:53:08

    把sex放在多列索引的第一位,程序上处理一下.比如全部的时候 sex in (1,2)

    回复
    0
  • 取消回复