如何在couchDB视图中添加空startkey数组索引?

1zmg4dgp  于 2022-12-09  发布在  CouchDB
关注(0)|答案(1)|浏览(220)

目前我正在使用带有CouchDB容器的超级分类帐结构。

function (doc) {
    if(doc.groups.length > 0) {
      doc.groups.forEach(function (tag) {
        emit([doc.id, tag.fname, tag.lname, tag.no], tag);    
      });
    }
  }

我想使用开始和结束键筛选数据。
我们可以在startkey数组中使用空索引来过滤视图吗?
以下是相同的示例:

http://0.0.0.0:7984/mychannel_team/_design/team_view/_view/team_view_filter
?skip=0&limit=21&reduce=false&startkey=[1,"isha",{},"45"]&endkey=[1,"isha",{},"45"]
iyr7buue

iyr7buue1#

是的,通过使用startkey=[""]查询视图。也可以使用null(3.2.2.5.排序规则规范)。
请注意参数
startkey=[1,"isha",{},"45"]&endkey=[1,"isha",{},"45"]
的结构很差,因为使用{}似乎暗示万用字符,而不是。
这些参数等同于先前的
startkey=[1,"isha",{}]&endkey=[1,"isha",{}]
因为{}后面的任何字段值都将被忽略。请将{}视为全部匹配,而不是字段/占位符通配符。
另一个问题是:关于OP的Map函数,复合键的第一个字段将始终是null。可能的意图是发出doc._id而不是doc.id

相关问题