Javascript 我怎样才能得到一个map/reduce结果,该结果按“的降序”排序;“价值”;值?如果还使用列表功能可以实现吗?
我有如下视图映射和缩减: 地图: 然后像这样调用视图:Javascript 我怎样才能得到一个map/reduce结果,该结果按“的降序”排序;“价值”;值?如果还使用列表功能可以实现吗?,javascript,mapreduce,couchdb,couchdb-futon,Javascript,Mapreduce,Couchdb,Couchdb Futon,我有如下视图映射和缩减: 地图: 然后像这样调用视图:\u design/aaa/\u view/getUserId?group=true&group\u level=2&startkey=[“111111”]&endkey=[“111111”,{}] 我可以得到以下结果集: {"rows":[ {"key":["111111",""],"value":7}, {"key":["111111","FFFF26"],"value":1}, {"key":["111111","FFFF44"],"v
\u design/aaa/\u view/getUserId?group=true&group\u level=2&startkey=[“111111”]&endkey=[“111111”,{}]
我可以得到以下结果集:
{"rows":[
{"key":["111111",""],"value":7},
{"key":["111111","FFFF26"],"value":1},
{"key":["111111","FFFF44"],"value":7},
{"key":["111111","FFFF34"],"value":2}
]}
但是,我想让上面的结果集按照“value”值的降序排序。如果还使用列表功能可以实现吗?预期结果如下:
{"rows":[
{"key":["111111",""],"value":7},
{"key":["111111","FFFF44"],"value":7},
{"key":["111111","FFFF34"],"value":2},
{"key":["111111","FFFF26"],"value":1}
]}
如果要对结果集进行排序,必须选择按值降序排序的结果集,可以使用比较器回调进行排序:
// ES6 Syntax
let originalResult = {
"rows":[
{"key":["111111",""],"value":7},
{"key":["111111","FFFF26"],"value":1},
{"key":["111111","FFFF44"],"value":7},
{"key":["111111","FFFF34"],"value":2}
]}
let newResult = {
rows: originalResult.rows.sort((a, b) => b.value - a.value)
}
如果要对结果集进行排序,必须选择按值降序排序的结果集,可以使用比较器回调进行排序:
// ES6 Syntax
let originalResult = {
"rows":[
{"key":["111111",""],"value":7},
{"key":["111111","FFFF26"],"value":1},
{"key":["111111","FFFF44"],"value":7},
{"key":["111111","FFFF34"],"value":2}
]}
let newResult = {
rows: originalResult.rows.sort((a, b) => b.value - a.value)
}
谢谢你的好建议,如何在map/reduce视图中实现这个新结果集?谢谢,我想我会在这个上使用list函数实现Hey Jamesjin,很抱歉没有人根据你要找的内容回答你的问题。不幸的是,我不知道couchdb,所以我不能帮你,但我想说这听起来像是你可以用查询来做的事情。谢谢你的好建议,如何在map/reduce视图中实现这个新结果集?谢谢,我想我会在这个上使用list函数实现Hey Jamesjin,很抱歉,没有人根据您要找的内容回答您的问题。不幸的是,我不知道couchdb,所以我不能帮你,但我想说这听起来像是你可以用查询来做的事情。couchdb只会根据键对你的视图进行排序,这就是它的设计目的。如果还想按值排序,可以使用前面提到的列表函数。CouchDB只会根据键对视图进行排序,这就是它的设计目的。如果还想按值排序,可以使用前面提到的列表函数。
// ES6 Syntax
let originalResult = {
"rows":[
{"key":["111111",""],"value":7},
{"key":["111111","FFFF26"],"value":1},
{"key":["111111","FFFF44"],"value":7},
{"key":["111111","FFFF34"],"value":2}
]}
let newResult = {
rows: originalResult.rows.sort((a, b) => b.value - a.value)
}