簡體   English   中英

MongoDB查詢相關記錄

[英]MongoDB query for related records

我有一個博客應用程序。 我需要創建一個MongoDB查詢 (SQL 很好 ,我會翻譯它),在博客中獲取特定帖子,以及在該帖子之前和之后發布的即時帖子。

例如,鑒於此帖子列表:

12/01/13 - Foo
15/01/13 - Bar
17/01/13 - Baz
27/01/13 - Taz

我如何寫一個查詢,以便我得到其中一個,ig Bar以及直接兄弟 FooBaz

出於性能原因,我想在不對數據庫進行三次不同查詢的情況下執行此操作。

在我的應用程序中,我像這樣獲取一個帖子:

model.findOne({
    date: {
        $gte: new Date(2013, 0, 15),
        $lt: new Date(2013, 0, 15, 24)
    },
    slug: 'Bar'
}, function(result){
    return { entry: result };
});

這是一種可能性(涉及2個查詢,一個用於查找主要帖子,第二個用於查找最近的文檔):

  • 將數據/帖子視為雙向鏈表。
  • 您需要將參考ID存儲為每個帖子文檔(數組)中“前一個”和“下一個”帖子的鏈接。 這使插入更復雜,但在過去的某個地方插入“新”博客文章似乎不太可能。
  • 索引鏈接字段
  • 鏈接字段中搜索具有主文檔$的id的文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM