查找数组 mongodb 中没有关键字的所有文档

Find all documents not having a keyword in array mongodb

考虑这 3 个文档。

{
    '_id': ObjectId('5b9035e7b93fee6022c31201'),
    'keyword': ['a', 'b']
}, 

{
    '_id': ObjectId('5b9035e7b93fee6022c31202'),
    'keyword': ['a']
}, 

{
    '_id': ObjectId('5b9035e7b93fee6022c31203'),
    'keyword': ['b', 'c']
}

我想匹配关键字 a 不存在的文档。

所以,结果应该是:

{
    '_id': ObjectId('5b9035e7b93fee6022c31203'),
    'keyword': ['b', 'c']
}

如何在 mongodb 中执行此操作?

您可以使用 $nin 查询运算符

db.collection.find({ "keyword": { "$nin": ["a"] }})

$ne 查询运算符

db.collection.find({ "keyword": { "$ne": "a" }})