Java 如何对Couchbase中特定列上的数据进行排序?
嗨,我是couchbase的新手。我的看法如下:Java 如何对Couchbase中特定列上的数据进行排序?,java,couchbase,Java,Couchbase,嗨,我是couchbase的新手。我的看法如下: function (doc, meta) { if(doc.docType == "DeviceData") emit([doc.group, doc.time], [doc.node, doc.node_gps_lat, doc.node_gps_long]); } 所以我想得到按doc.node值排序的结果。我搜索了文档,但找不到合适的解决方案 请在这方面需要帮助。Couchbase按键排序结果。因此,在您的示例中,结果将首先按do
function (doc, meta) {
if(doc.docType == "DeviceData")
emit([doc.group, doc.time], [doc.node, doc.node_gps_lat, doc.node_gps_long]);
}
所以我想得到按doc.node值排序的结果。我搜索了文档,但找不到合适的解决方案
请在这方面需要帮助。Couchbase按键排序结果。因此,在您的示例中,结果将首先按
doc.group
排序,然后按doc.time
排序。如果要按文档节点对结果进行排序
,则应将该字段包含在注册表项中或客户端/应用程序端的排序结果中
如果您使用某个时间范围(您的startkey
和endkey
在doc.time
param中不同)查询视图,则只能在客户端/应用程序端按doc.node排序。如果您想在couchbase侧排序,请尝试更改您的数据模型
下面是一个解释couchbase中订购的示例。下面是couchbase如何对视图结果进行排序的说明。我想我是在补充m03geek上面所说的,为了按特定列(CB中的值)进行排序,需要将该值作为键传回。我正在使用CB构建一个Django应用程序,我想按创建日期排序,所以我创建了以下视图映射函数
函数(文档、元){
如果(doc.type&&doc.type==“快照”&&doc.published==“是”&&doc.section==“运动”){
var arrDate=doc.create\u date.split(“-”);
var newDate=新日期(arrDate[2],arrDate[0],arrDate[1]);
var numTime=newDate.getTime();
doc.time=numTime;
发出(单据时间,空);
}
}