查询:
SELECT *, history_count as `count`
FROM pdf_history
WHERE 1 AND history_date>=1426180929 AND history_count!=0
EXPLAIN
id select_type table type possible_keys key key_len ref rows Extra
1 SIMPLE pdf_history ALL history_date,history_count NULL NULL NULL 697 Using where
答案 0 :(得分:1)
优化器选择不使用索引的原因之一是过滤器不会减少搜索空间。
例如
history_date>=1426180929
或
history_count!=0
已经带来了所有记录,然后使用索引并没有真正帮助。
我的建议是这两个查询并检查ANALYZE
以查看有多少
600条记录与过滤器匹配
SELECT count(*) FROM pdf_history WHERE history_date>=1426180929;
SELECT count(*) FROM pdf_history WHERE history_count!=0;