我正嘗試使用MongoDB
和pymongo
構建排行榜類型的應用程序,並且該集合的設置非常簡單,只需按整數值排序即可。這使得使用sort
和limit
來計算頂部和底部用戶相當無足輕重。在已排序的Mongo集合中查找文檔的位置
我的問題是如果我想搜索一個位於集合中間的用戶。我將如何創建一個能夠確定用戶在有序集合中的位置的查詢?
使用該數據集例如:
{user: 'A', value: 20}
{user: 'B', value: 10}
{user: 'C', value: 5}
{user: 'D', value: 4}
{user: 'E', value: 1}
我將如何構建一個給定的,我們正在尋找{user: 'C'}
查詢它不僅返回用戶文件,也是用戶是3日在有序列表?
下一個問題是我有這個,我怎麼也確定用戶B
和D
在周圍的用戶?
我已經知道如何將整個列表拉到我的應用程序中,並通過它快速搜索,但這似乎是對這個問題的錯誤/昂貴的答案。
多個文件將是可能的......對於定期運行的某種清理工作,如果天真方法證明過於昂貴,我會記住這一點。 – EEP