美好的一天,
我有大约4GB的数据,在大约10个不同的表中分开.每个表都有很多列,每列可以是查询中的搜索条件.我根本不是DBA,我对索引知之甚少,但我想尽可能加快搜索速度.重要的是,任何时候都不会有任何更新,插入或删除(表格每4个月填充一次).是否适合在每一列上创建索引?记住:没有插入,更新或删除,只选择!另外,如果我可以将所有这些列整数而不是varchar,我会在速度上有所不同吗?
非常感谢你!
答:不可以.分别对每一列进行索引并不是一个好的设计.在许多情况下,索引需要包含多个列,并且针对不同的需求存在不同类型的索引.
在其他答案中提到的调整向导是一个很好的第一次切割(特别是对于学习者).
不要试图猜测你的方式,或希望你理解复杂的分析 - 获得特定于你的情况的建议.我们似乎有几个线程在这里非常活跃,特定情况和查询优化.