2010-11-12 72 views

回答

1

您需要使用以下地圖功能編寫視圖。

function(doc) { 
    emit([doc.author, doc.date], { 
      "title": doc.title, 
      "author": doc.author, 
      "date": doc.date, 
      "text": doc.text}); 
} 

現在你可以使用以下網址查詢視圖:

http://127.0.0.1:5984/dbname/_design/design_doc_name/_view/viewname?startkey=[22, "2010-11-12T10:20:30"]&endkey=[22, {}]&descending=true&skip=20&limit=10 

在開始鍵的日期必須是當前日期時間。在couchdb中沒有辦法效仿NOW()

couchdb中的視圖只是按鍵排序的鍵值對列表,它提供了一種訪問該列表範圍的方法。您需要設計您的視圖,以便您可以使用範圍查詢來獲取所需的結果。

+0

這裏有個有趣的地方是你實現了'LIMIT 20',而不是'LIMIT 20,10'。 – 2010-11-12 17:54:33

+0

感謝您的回覆,但如何才能將此偏移限制在最低限度? – heuri 2010-11-12 18:44:27

+0

你不能(至少,不合理的表現)。 http://stackoverflow.com/questions/312163/pagination-in-couchdb – 2010-11-12 20:36:12