3
我的文件看起來是這樣的:如何根據其他文檔屬性檢索動態屬性?
{
draft: "<draft_content>",
published: "<published_content>"
}
當我更新文檔,我只更新"draft"
或兩者"draft"
和"published"
。因此,文件可能是這樣的:
{
draft: "B",
published: "A"
}
or
{
draft: "B",
published: "B"
}
我需要什麼,是獲取所有文件如果有信息draft === published
,不必實際的返回draft
和published
領域。在SQL中,我會這樣做:
select (draft = published)::boolean as is_published from documents;
在MongoDB中可以這樣做嗎?
我也想過保存每個文檔中isPublished: true/false
標誌,但是當我更新draft
是不可能的,以確定是否draft
是published
或沒有不同。例如,如果我有文檔{draft: "A", published: "A", isPublished: true}
,那麼使用{draft: "A", isPublished: false}
進行更新會改變isPublished的狀態,即使草稿與已發佈的相同...
好吧,看來如果我想避免檢索「草稿」和「發佈」,我將不得不計算並存儲它們中的每一個的散列以在客戶端進行比較。 – user606521