按时间戳从couchDB订单中选择最新的10个文档

时间:2014-05-01 13:09:52

标签: javascript mapreduce couchdb

当我运行以下视图时,我会按时间顺序获取文档。但是,如果我通过传递特定的device_sno来调用以下URL,那么它就无法工作.....

查看:

function(doc){
    emit([doc.device_sno,doc.timestamp],doc);
}

网址:

http://localhost:5984/trip_test/_design/test/_view/test?key=["Axe001"]&limit=10&ascending=true&include_docs=true

我需要按时间戳排序device_snoAxe001的最后10条记录!

任何人都可以帮我解决这个问题,对我来说会有很大的帮助。 提前谢谢!

1 个答案:

答案 0 :(得分:3)

试试这个:

http://localhost:5984/trip_test/_design/test/_view/test?start_key=["Axe001"]&limit=10&end_key=["Axe001", {}]

这将为您提供前10项。要获得最后10个,请执行:

http://localhost:5984/trip_test/_design/test/_view/test?end_key=["Axe001"]&limit=10&start_key=["Axe001", {}]&descending=true

使用key会强制它匹配该特定密钥,但并非如此,因为密钥有两个元素。