我可以按减值返回的值来订购视图的结果吗?
{
"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}
]
}
答案 0 :(得分:1)
我只是将其内置到密钥中...
COPY
为了搜索特定键,请使用如下所示的开始键/结束键查询:
{"key": [1, "zztop"], "value": "whateverYouWant"},
{"key": [2, "bob"], "value": "whateverYouWant"},
{"key": [3, "john"], "value": "whateverYouWant"}
只要您的值是数字,只要使endkey大于可能的最大值,此查询就应返回“ zztop”的结果。
草率,但是我还没有找到更好的CouchDB排序方法。总而言之,您最好在应用程序中进行排序。
答案 1 :(得分:0)
您只想按每个对象的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意味着它们是相等的。