node.js - 使用 mongoose 返回包含某个字段的所有文档

标签 node.js mongodb mongoose mongodb-query

我的架构在我的文档中有一个字符串字段 companyName。 我从查询字符串中获取一个对象 {companyName:"Amazon,Microsoft"}}。 如何取回所有带有公司名称 Amazon 或 Microsoft 的文档?

现在我正在将对象更改为 {companyName:{$regex:"Amazon Microsoft",$options:'i'}} 并将其传递给 find() 方法,但它返回一个空数组

最佳答案

您可以将查询字符串转换为 $in运算符:

let query = {companyName:"Amazon,Microsoft"};

let mongoDbQuery = { companyName: { $in: query.companyName.split(',') } }

let result = await Model.find(mongoDbQuery);

关于node.js - 使用 mongoose 返回包含某个字段的所有文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68814200/

相关文章:

node.js - 如何在sails中使用像 'array'和 'json'这样的属性类型

node.js - Mongoose:为什么 $addtoset 添加不正确的 ObjectId

node.js - 如何以优雅的方式在多个项目中重用 Mongoose 模型

node.js - 错误 - 使用 Mongoose 连接到 Azure CosmosDB

node.js - req.pipe Nodejs 的安全影响

node.js - 如何在 Cypress 中共享变量值

node.js - 如何解决 nodemailer 中的 CERT_UNTRUSTED 错误

javascript - yarn 无法使用 node 12.1.0 构建 node-sass

MongoDB 服务器未使用 replset 运行

sql-server - 为什么要对 MongoDB 使用分片?