在 MongoDB 中,可以使用 $and
操作符来组合多个 where
子句。下面是一个使用多个 where
子句的更新查询的示例代码:
const MongoClient = require('mongodb').MongoClient;
MongoClient.connect('mongodb://localhost:27017', (err, client) => {
if (err) throw err;
const db = client.db('mydatabase');
// 定义多个 where 子句
const whereClauses = [
{ age: { $gte: 18 } }, // 年龄大于等于 18 岁
{ gender: 'female' } // 性别为女性
];
// 构建查询条件
const query = { $and: whereClauses };
// 更新查询
db.collection('users').updateMany(query, { $set: { status: 'active' } }, (err, result) => {
if (err) throw err;
console.log(`${result.modifiedCount} 条文档已更新`);
client.close();
});
});
在上述示例中,我们首先定义了多个 where
子句,然后使用 $and
操作符将它们组合在一起,构建了一个查询条件。然后,我们使用 updateMany
方法来执行更新操作,将符合查询条件的文档的 status
字段更新为 'active'
。最后,我们输出更新的文档数并关闭数据库连接。
注意,以上示例假设你已经正确地连接到 MongoDB 数据库,并且已经有一个名为 users
的集合存在。你需要根据自己的实际情况进行相应的调整。