0
我有一個集合與數組存在價值:我想使用$in
操作貓鼬,檢查是否在對象
我用這個至今:
Person.find({members: {"$in": [id1]}})
但我已經知道這個缺陷:如果成員數組像Members: [id1, id2, ... id3]
那樣的方法可行。但它是一組對象。那麼我該如何解決它?
我有一個集合與數組存在價值:我想使用$in
操作貓鼬,檢查是否在對象
我用這個至今:
Person.find({members: {"$in": [id1]}})
但我已經知道這個缺陷:如果成員數組像Members: [id1, id2, ... id3]
那樣的方法可行。但它是一組對象。那麼我該如何解決它?
$elemMatch
可以用Arrays of Embedded Documents使用:
你的情況,你可以嘗試:
Person.find({
members: {
$elemMatch: { id: id1 }
}
});
但由於它是一個Single Query Condition:
Person.find({
"members.id": id1
});
會做的伎倆。
您可以使用members.id
爲場中查詢到符合您子id
S:
Person.find({ "members.id": { "$in": ["id1"] } })
最好的答案海事組織。 – r3wt