【发布时间】:2013-05-31 05:34:15
【问题描述】:
比如说,我有一个表ResidentInfo,在这个表中我有唯一的约束HomeAddress,也就是VARCHAR 类型。为了将来的查询,我将在此列上添加一个索引。
查询只会有操作=,我会使用B-TREE模式,因为目前不推荐使用Hash模式。
问题:从效率的角度来看,使用B-TREE,你认为我应该添加一个新的列,编号为1,2,3....,N 对应不同的家庭地址,而不是在HomeAddress上添加索引,我应该在数字列上添加索引吗?
我问这个问题是因为我不知道索引是如何工作的。
【问题讨论】:
-
感谢@Denis 指出唯一约束会自动建立索引。
-
根据性能有一个始终适用的准则:测试它。从这种模糊的描述中获取所有用例是不可能的,所以当你询问速度时,测试什么对你来说是最快的。在某些情况下,理论上次优方法对于您通常处理的数据更快。
标签: database postgresql indexing