多变量where子句的最佳mysql索引

时间:2011-02-23 22:42:01

标签: mysql performance

我有一个表,我经常在查询中使用这种类型的where子句:

where brand_id = 330516084 
    and influencer_id = 28995 
    and date_retrieved >= '2011-01-24' 
    and date_retrieved <= '2011-02-23'

我的桌子有一个id和8个左右的其他字段,它是innodb

为了快速进行此查询,我应该为brand_id和influencer_id以及date_retrieved(每个的1个索引)创建索引,还是为所有3个字段创建1个索引?或其他什么?

感谢 乔尔

1 个答案:

答案 0 :(得分:1)

对于该查询,最快的索引是brand_id和influencer_id上的一个索引(首先放置具有最独特值的索引)。日期条件不会使用任何索引,因为您在运算符中的符号小于和大于符号。