30
我知道MongoDB能夠處理大量請求/秒,但是讓我們說我必須查詢集合中很多文檔,並給出它們的_id;什麼聽起來更好:使用所有想要獲取的id的_id屬性進行$ in,或循環findOne查詢?
我知道MongoDB能夠處理大量請求/秒,但是讓我們說我必須查詢集合中很多文檔,並給出它們的_id;什麼聽起來更好:使用所有想要獲取的id的_id屬性進行$ in,或循環findOne查詢?
我肯定會使用$ in查詢並提供一個_ids數組。
例子:
db.collection.find({
"key": {
"$in": [
ObjectId("xxx"),
ObjectId("yyy"),
ObjectId("zzz")
]
}
})
爲什麼?
如果您想查看,還有一些其他文檔here。
如果$ in ...中有很多項目,例如100或1,000,那該怎麼辦? – ewindsor
@ewindsor高達1000的任何東西通常都可以。之後,我會重新考慮您擁有的模式並開始預先計算數據。 –
可以在一個JSON對象數組中使用'$ in'嗎? –