我有一個CouchDB的視圖「record_by_date_product」,定義如下:如何查詢使用複合鍵的couchdb視圖?
function(doc) {
emit([doc.logtime, doc.product_id], doc);
}
我想運行一個查詢這是這樣的:
(logtime > fromdate & logtime < todate) & product_id in (1,2,6)
這可能與這種觀點?
我也使用couchdb python庫來訪問couchdb。下面的代碼片段:
server = couchdb.Server()
db = server['mydb']
results = db.view('_design/record_by_date_product/_view/record_by_date_product')
此頁http://packages.python.org/CouchDB/client.html#viewresults規定,我們可以使用一個startkey和endkey。但我無法讓它工作。
謝謝
它可以比這更簡單。只需將您的按鍵順序顛倒過來,以便文檔按產品排序,然後按日誌時間排序。查詢相同的視圖三次,在您想要的時間範圍內查找每個產品。這是我提交的答案中的第二個建議,所以如果您喜歡它,請將其標記爲已接受:) – 2011-01-14 17:12:13
您好,我應該如何「在時間範圍內查找每件產品」?我想這正是我問的問題。事實是,我們只能將日期或範圍[startdate enddate]發送到視圖。但我們無法同時發送範圍和產品ID。我正在考慮使用接受任意數量的查詢參數的列表。將提供更新。謝謝! – 2011-01-14 17:33:38