【发布时间】:2011-02-17 21:29:54
【问题描述】:
我必须对这样的表执行 SELECT:
- 身份证
- 用户名
- 速度
- is_running
语句是这样的:
SELECT *
FROM mytable
WHERE username = 'foo'
AND is_running = 1
我有一个关于“用户名”的索引。如果我正在运行上述语句,是否还需要索引“is_running”以获得最佳性能?还是只有选择的第一列有所不同?我正在使用 mysql 5.0。
【问题讨论】:
-
假设
is_running是布尔值,索引不会产生影响,因为没有足够的可能性。 -
什么是用户名索引选择性? (即总共有多少行,有多少个唯一用户名)
标签: sql mysql indexing query-optimization