【发布时间】:2023-03-13 11:44:01
【问题描述】:
在我们的 MongoDB-Node.js-Mongoose 设置中:
我们已经创建了一个text search index,并且我们也可以使用它从集合中找到一个词:
db.sampleCollection.find( { $text: { $search: "wordToSearch" } })
到目前为止,没有任何问题......
我们有一个要求,如果 sampleCollection 中的文档有一个字段 private 设置为 true,那么我们需要从结果集中排除这些文档。
也许我们可以添加这样的东西:
.where({ private: true})
这看起来像是一个额外的调用并且效率不高。有没有更好更快的方法来做到这一点?
【问题讨论】:
-
类似
db.sampleCollection.find( { private: { $ne:true }, $text: { $search: "wordToSearch" } } }) -
@Veeram 谢谢,会检查并更新!!有什么理由证明它更快?
标签: javascript node.js mongodb optimization mongoose