2016-03-03 37 views
0

我有一个地图功能跳过couchbase地图功能的一个关键参数

function (doc, meta) { 
    emit([doc.Marks,doc.Acc_no],doc.Type); 
} 

在这个时候我送startkey和endkey如下

startkey = [13] 
endkey = [86] 

我得到有13间标记的所有文件如预期的那样,与Acc_No无关。

现在我想做是这样

startkey =[,1] 
endkey = [,5] 

这就是我想在1和5之间ACC_NO不论其商标的所有文件,但我在这种类型的查询得到错误的查询。 如何在不制作新视图的情况下完成我的第二种查询?

+0

您不应该在这里添加第二个问题。 – Kerr

回答

3

不,你不能那样做。 如果你创建一个键,在这里作为一个数组,你应该使用“前N个”,你可以跳过数组中的最后一个对象,但是你必须从开始到某点指定它们。 因此,您只能从右侧跳过,而不是从左侧跳过。

为了实现自己的目标在这里,你有两个选择:

  1. 乱写的标记不同的看法。
  2. 想到一个更适合您的密钥排序,将最适合您。

欲了解更多信息,请参阅文件。

http://docs.couchbase.com/admin/admin/Views/views-querying.html

+0

自从这个问题以来,它已经很长时间了,但我对于跳过参数还有1个疑问。我们是否也可以在查询时跳过右侧参数?似乎我无法做到这一点。 –

+0

你无法做到这一点是什么意思?只是不要添加右手参数。 你有没有例子? –

+0

是编辑帖子添加我正在使用的示例 –