如何解决Erlang Mnesia 是否在ordered_set 上选择以Erlang 术语顺序给出列表?
在文档中,我不清楚是否需要按 next 或 foldl 的顺序进行迭代(提到 foldr 与ordered_set 的顺序相反,因此推测 foldl 的顺序相同)或如果我可以使用 select 并依赖它被排序(假设ordered_set 表)
解决方法
我可以使用 select
并依赖它被排序吗(假设ordered_set 表)
对于ordered_set 类型的表,对象的访问顺序与第一次/下一次遍历的顺序相同。这意味着比赛 规范是针对具有第一个/下一个键的对象执行的 order 和对应的结果列表就是按照那个顺序 执行。
返回表 Tab 中的第一个键 Key。对于ordered_set 表, 返回 Erlang 术语顺序中的第一个键。
使用 match
和 select
函数的遍历可能不需要扫描
整个表取决于键的指定方式。一场比赛
具有完全绑定键(没有任何匹配变量)的模式将
将操作优化为没有任何表的单键查找
遍历。对于ordered_set,部分绑定的键将限制
遍历以仅扫描基于术语顺序的表的子集。
ordered_set
类型的表以随机顺序返回搜索结果对我来说毫无意义。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。