如何使用带pouchdb的索引一次查询X特定文档?

时间:2015-06-11 00:16:42

标签: javascript couchdb pouchdb nosql

我们说我有一组X ID。它们没有序列 - 它只是一个X随机ID的列表。

现在,我想使用这个数组查询X文档,并将其作为SINGLE结果返回 - 就像一个文档数组,而不是5个单独的查询。

我知道我可以动态创建一个map()函数来实现这一点 - 本质上是在id数组中查找id为id的文档...但是查询总是很慢。我喜欢学习如何做的就是让它快速,就像使用二级索引一样。

有没有办法用PouchDB做到这一点?如果没有办法做到这一点,我怎样才能轻松地将从X查询返回的X承诺链接在一起并将它们全部归为一个结果 - 可能是下一个最好的东西?

2 个答案:

答案 0 :(得分:1)

要搜索_id的数组,您可以使用allDocs()keys

db.allDocs({include_docs: true, keys: ['a', 'b', 'c']})
  .then(/* ... */)
  .catch(/* ... */);

除非您想要搜索_id以外的内容,否则不需要二级索引。在这种情况下,您可以查看queriespouchdb-find

答案 1 :(得分:0)

您可以尝试使用PouchDB的Datalog索引并执行复杂查询。

请检查插件here