编写couchDB的视图查询

编写couchDB的视图查询,couchdb,mapreduce,Couchdb,Mapreduce,我有一个以下结构的文件数量 { _id:"", url:"", users_linked:[1,2,3...] } 每当用户登录时,我想向他显示除链接到hi的URL之外的所有URL,我的地图功能会显示 for(i in doc.users_linked){ emit(doc.users_linked[i],doc.url); } 帮助。如果我理解正确,给定一个id==USERID的用户,您需要与使用key=USERID查询视图相反的结果 我知道的唯一解决方案是对您提供的视图执行两个查询:

我有一个以下结构的文件数量

{
_id:"",
url:"",
users_linked:[1,2,3...]
}
每当用户登录时,我想向他显示除链接到hi的URL之外的所有URL,我的地图功能会显示

 for(i in doc.users_linked){ emit(doc.users_linked[i],doc.url); }

帮助。

如果我理解正确,给定一个id==USERID的用户,您需要与使用
key=USERID
查询视图相反的结果

我知道的唯一解决方案是对您提供的视图执行两个查询:

  • 首先使用以下命令获取所有“以前的用户:
    endkey=USERID&inclusive\u end=false
  • 然后使用:
    startkey=
    获取所有“以下用户”

从您的示例文档中,我假设用户ID是数字的。

我发现这是一个潜在的解决方案,但这不会使整个过程变得效率低下吗?如果没有进一步的细节,很难说。我使用的经验法则是:让它尽可能简单,并根据变化设计你的应用程序。当性能问题成为问题时修复它们。