Scala Couchbase视图:按键排序
我使用的是Couchbase 3.0,我有一个用例,我想执行排序,但当我通过Couchbase进行cam时,它不提供值排序,而是提供键排序,但当我使用降序(true)时,它会返回空列表。另一方面,如果我只是简单地使用它,而没有降序,那么它会给我所有相关的文档 我的地图功能是:Scala Couchbase视图:按键排序,scala,couchbase,couchbase-view,Scala,Couchbase,Couchbase View,我使用的是Couchbase 3.0,我有一个用例,我想执行排序,但当我通过Couchbase进行cam时,它不提供值排序,而是提供键排序,但当我使用降序(true)时,它会返回空列表。另一方面,如果我只是简单地使用它,而没有降序,那么它会给我所有相关的文档 我的地图功能是: function (doc, meta) { emit([meta.id,doc.latest.sortData],null); } } 现在,我的用例是,我想对meta.id执行匹配查询,然后对所有匹配的用例对数据
function (doc, meta) {
emit([meta.id,doc.latest.sortData],null);
}
}
现在,我的用例是,我想对meta.id执行匹配查询,然后对所有匹配的用例对数据进行排序,然后找出最大值
我使用的代码是:
ViewQuery.from(DesignDocName, viewName).startKey(JsonArray.from(write(List("something","")))).descending(true).limit(5).stale(Stale.FALSE))
如果删除降序参数,则会得到相关的行,但它们没有排序。所以,你能不能给我一个方法,可以做到这一点
谢谢你的帮助
谢谢 我在阅读Couchbase的文档时偶然发现了这句话: 因为选择是在对视图结果排序之后进行的,如果 将结果配置为按降序排序,然后 使用键范围选择信息,然后还必须反转 开始键和结束键参数
请参见此处:不使用
降序
是否仅获得所需的结果?您是否应该使用某种形式的endKey
来限制单个meta.id
?如果我使用endKey=something,那么它也会给我一个空列表,我们认为它需要一个map和reduce来完成这一点。你能提供一些样本数据和预期结果吗?有了这些,我们可以帮你找到答案。我们需要在emit语句中同时包含一个键和一个值。