是否有一种方法可以查询RethinkDB中过滤器上最近的位置



目前,Rethink API文档说get_nearest命令只对表有效。当然,我可以在之后过滤结果,但这似乎效率不高,而且当我想将结果限制在特定数量的项目时,需要按距离对所有项目进行排序。

是否有一种方法,我忽略了从一个查询中过滤列表中获得最接近的结果?

它只在表上工作的原因是强制索引。索引只作用于表级别。考虑一下,这是有道理的,因为这是一个昂贵的查询。

但是,如果您有一个过滤列表,您能做的最好的事情就是使用distance并按其结果排序。

这样就可以了:

r.db('db').table('table')
  .filter(function_to_filter)
  .orderBy(function(doc) {
    return r.distance('your_point_to_compare', doc('point'))
  })

相关内容

  • 没有找到相关文章

最新更新