【发布时间】:2015-12-22 17:26:38
【问题描述】:
我有一个具有以下属性的表:
SortCode Index Created
SortCode 是主键,Index 是辅助键。给定一个Index 值,我如何获得关联的SortCode 值?
我试过ets:lookup/3,但它只需要一个主键。
【问题讨论】:
-
您应该包含代码,以便我们可以看到您作为值放入表中的内容。不管怎样,看看
ets:matchfunctions。 -
您可以使用 ets:match/2 或 ets:select/2 来查找具有索引值的表条目,但是会导致读取表的每个条目,而 ets:lookup 的效率要低得多/2。你可以使用 mnesia 来实现你的表,你可以在一个表中维护多个索引,并使用 mnesia:index_read/3 来有效地查找二级索引。
标签: erlang mnesia erlang-shell ets