create table foo (id, name varchar(255), value varchar(255));
在name
表中仅对foo
行中的25
字段进行索引是否有意义,其中大多数查询都像select * from foo where name = 'name1';
,并且这些内容都不会发生变化得多。
答案 0 :(得分:6)
如果它只包含25行,那么它可能是开销而不是性能增益。和查询优化器可能会选择不使用此索引。
答案 1 :(得分:6)
在这种情况下不要添加索引,mysql可能会以任何方式进行完全扫描,即使它使用索引,也可能只是不必要的开销。
答案 2 :(得分:1)
name
是唯一的吗?
如果是,则需要一个唯一索引来维护数据完整性。
如果没有,当你扩展查询以执行JOIN等时,缺少索引可能会受到伤害。对于25个静态行,它如何增加开销?
我不同意其他答案......