搜尋

首頁  >  問答  >  主體

mysql 優化之性別優化

資料庫有十幾萬用戶, 其中男性佔90% , sex = 1
如: select uid member where sex =1 and xxx xx
那麼這個sex 就會全表掃描, 這樣怎麼處理

怪我咯怪我咯2747 天前743

全部回覆(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
  • 取消回覆