2016-12-30 51 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