【发布时间】:2012-08-13 04:56:06
【问题描述】:
我有一个查询,我想快速查询,但有些东西我还不明白。
我使用 3 个查询进行了简单的测试。
在我的表中有列
1 和 3 是带有普通键的 int(每个都有自己的索引)
15 和 35 是带有全文键的字符串(每个都有自己的索引)
第一
select `1` from el where ( `15`='Bump' or `35`='Bump' and `3`='1' ) limit 1;
时间:250 毫秒
第二
select `1` from el where ( `35`='Bump' and `3`='1' ) limit 1;
时间:0.024ms
第三
select `1` from el where ( `15`='Bump' and `3`='1' ) limit 1;
时间:0.007ms
我的问题是:wtf ?还有怎么解决的?
提前致谢!
编辑:好的,这似乎是 mysql 的限制,不能是真的 已修复,所以我决定只运行两个查询而不是一个,我得到了 0.031ms,这比 0.270ms 要好。
【问题讨论】:
-
@Ariel 给出了一个很好的答案,但我不接受它。
标签: mysql optimization indexing