我有一個陣列,_ids我想從查詢中排除它們:
console.log('relatedCards', relatedCards);
const motherCards = await db.MotherCard.find({ "_id": { $ne : relatedCards } });
但它回傳此錯誤:

為什么會發生這種情況以及如何解決這個問題?
uj5u.com熱心網友回復:
$ ne通常用于一個值。但是如果你想排除多個專案array,你可以使用$ nin
例如我有這個模型:
{
"_id": "5a934e000102030405000000",
"key": 1
},
{
"_id": "5a934e000102030405000001",
"key": 2
},
{
"_id": "5a934e000102030405000002",
"key": 3
},
{
"_id": "5a934e000102030405000003",
"key": 4
},
{
"_id": "5a934e000102030405000004",
"key": 5
}
我想排除key:3和key5:
db.collection.find({
key: {
"$nin": [
3,
5
]
}
})
現在這個查詢回傳一個正確的結果:
[
{
"_id": "5a934e000102030405000000",
"key": 1
},
{
"_id": "5a934e000102030405000001",
"key": 2
},
{
"_id": "5a934e000102030405000003",
"key": 4
}
]
我希望這個解決方案可以幫助你。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/483612.html
標籤:javascript 节点.js 猫鼬
