2012-01-10 104 views
1

我有一個wpf應用程序和mongo數據庫作爲後端,如果我從wpf應用程序調用一個查詢mongo數據庫它給我百萬記錄,所以目前我使用正常分頁,如存儲所有數據從數據庫到數據表並做分頁。但是如果系統內存少,不可能存儲那麼多記錄,所以有些機構對我說mongo db提供了分頁功能,意味着當用戶點擊下一個或前一個時,我們可以直接從db調用記錄,所以任何人都可以幫助我做到這一點。DataGrid分頁使用Mongo dB

回答

1

您可以使用mongodb的limit() and skip()來實現分頁。例如,爲了獲得第三頁面,頁面大小是10,你會使用這個查詢:

db.your_collection.find().skip(20).limit(10) 
1

有兩種分頁:

  1. 通過limitskip,就像@milan建議。
  2. 通過區域查詢:

    db.items.find({created: {$gt: startDate, $lt: endDate})

範圍查詢的運行速度更快,然後跳過,因爲他們沒有必要邁向 '跳過' 項目。

查看相關thread以及。

對於你的情況,如果你只有下一頁/上一頁按鈕範圍分頁應該是不錯的選擇。

+0

你可以爲我提供範圍分頁示例。 – nag 2012-01-11 10:06:01

+0

@nag:在我上面的答案中看到mongo shell示例。 – 2012-01-11 10:33:04