如何通过降低值来订购查看结果? CouchDB
问题描述:
我可以通过减少返回的值来排序视图结果吗?如何通过降低值来订购查看结果? CouchDB
{
"rows": [
{"key":"bob","value":2},
{"key":"john","value":3},
{"key":"zztop","value":1}
]
}
我想这样的结果:
{
"rows": [
{"key":"zztop","value":1},
{"key":"bob","value":2},
{"key":"john","value":3}
]
}
答
你只是想在
rows
阵列的每个对象的
value
属性进行排序
?您可以为js sort
方法指定自定义比较方法。
myResult.rows.sort(function (a, b) {
return parseInt(a.value,10) - parseInt(b.value,10);
});
参数a
和b
将每一个可以从所述rows
阵列中的条目。该方法将返回大于0,0或小于零的值int
。大于0意味着a
应该在b
之前订购,反之小于0,0表示它们相等。
+0
问题是关于如何在CouchDB上执行此操作。当然,我们可以在得到它们后手动对结果进行排序。但是,如果返回的结果比存储器中存储的结果还多,例如? – lovasoa 2017-01-18 20:27:18
你在做这个PHP或JS! – 2010-03-12 23:17:47
我正在Ruby on Rails中使用CouchRest gem进行操作。但是json比这个简单的例子更大。 – 2010-03-13 00:03:35
显示您的Map函数的外观 – 2010-04-20 04:52:57