View 当开始键和结束键相同时,如何进行couchbase视图查询?

View 当开始键和结束键相同时,如何进行couchbase视图查询?,view,mapreduce,couchbase,View,Mapreduce,Couchbase,地图功能 function(doc, meta) { if (doc.login_timestamp) { emit(dateToArray(doc.login_timestamp), doc.username); } } 产生: [2011,10,10,10,10,09] “scalabl3” [2012,12,24,17,03,59] “scalabl3” [2013,01,01,08,22,23] “scalabl3” [2013,01,25,10,38,01] “tgr

地图功能

function(doc, meta) {
  if (doc.login_timestamp) {
    emit(dateToArray(doc.login_timestamp), doc.username);
  }
}
产生:

[2011,10,10,10,10,09] “scalabl3”
[2012,12,24,17,03,59] “scalabl3”
[2013,01,01,08,22,23] “scalabl3”
[2013,01,25,10,38,01] “tgrall”
[2013,01,25,11,02,32] “jzablocki”
[2013,02,01,11,02,32] “scalabl3”
我如何获得2013年的记录? 我试过了

这不起作用,因为根据定义,结果必须大于等于开始键,小于结束键


正确的方法是什么?

因为您有一个数组,所以可以为开始和结束指定数组。因此,应该采用两种方法中的一种:

startkey=[2013]&endkey=[2014]


在第二个示例中,您给出的值大于您希望在有效条目中看到的值。

这是Couchbase服务器还是Couchbase Lite?可能是类似的
startkey=[2013]&endkey=[2014]
当然可以,因为它是数字的。但是当初始值是一个字符串(例如“someid”)时,该怎么办呢?我怎么才能加1呢?有没有办法让第一部分匹配一个值而不是一个范围?如果你说的是Couchbase Lite,那么你可以使用
inclusiveEnd
inclusiveStart
。endkey也可以用作前缀。因此,您可以将endkey指定为与start相同的值,或者其他任何值,并将其包括在内。更多信息,请参阅和。
startkey=[2013]&endkey=[2014]
startkey=[2013]&endkey=[2013,99]