2016-12-30 126 views
0

我想根据自定义排序对couchdb查询a.k.a芒果查询的结果进行排序。我需要自定义排序,因为如果Status可以是下列之一:Cloudant couchdb查询自定义排序

  1. 活动= 1
  2. 销售= 2
  3. 队伍= 4
  4. 待定= 3

我想在Status上排序结果,但不按字母顺序排列,而是将我自己的权重分配给上面列表中可以看到的每个值。下面是Status查询选择我使用:

{type:"Property", Status:{"$or":[{$eq: "Pending"}, {$eq:"Active"}, {$eq: "Sold"}]}} 

如果我使用sort阵列中的json与状态,我认为它会按字母顺序排序,我不想要的。

回答

0

您实际上正在根据“状态”查找结果。您可以创建一个类似的观点:

function(doc) { if (doc.type == "Property") { emit(doc.Status, doc);}}

当你使用它,调用它4倍于你所需要的顺序,你会得到你所需要的结果。这将消除排序的需要。

+0

谢谢,但我想用cloudant查询芒果索引来实现这一点 – user3677331