我创建了一个 postgres 表,如下所示:
name ID SNO
jack 12 1
bob 123 2
andy 34 3
jack 23 4
等等。它总共有4100万个条目。SNO 是我连续 INT 值的主键。当我运行查询以选择特定的 SNO 时,它的运行速度非常快。然而!我需要对“名称”运行查询,该查询应返回特定名称的所有实例。请注意,名称不必是唯一的,并且很可能重复但具有不同的 ID。搜索名称的查询需要很长时间才能找到。我尝试使用以下方法在“名称”上创建索引:
CREATE INDEX name ON userlist(name)
然而,虽然这提高了性能,但它仍然太慢了。有什么方法可以索引作为“文本”数据类型的“名称”来提高访问性能,就像访问“int”SNO一样?