【发布时间】:2013-03-07 21:30:42
【问题描述】:
我刚刚发现了这篇文章:
MySQL like query runs extremly slow for 5000 records table
我有兴趣了解 asaph 的帖子,他说:
我不希望 select * from customer 像 '%a%' 这样的代码是 快,因为它不可能使用索引。每条记录都必须 检查。考虑 select * from customer where code like 'a%' if 可能,因为这可以使用索引。
有人能解释一下这两个 select 语句的区别吗?我知道一个人只有一个通配符,只会找到以“a”开头的东西。但是为什么那个可以被索引呢?
【问题讨论】:
-
我认为这里的问题不是列是否可以被索引,而是索引是否会在特定查询中实际使用。