Overview
在本指南中,您可以了解如何使用 Node.js 驱动程序在集合上运行 MongoDB Search 查询。MongoDB Search 使您能够对 MongoDB 上托管的集合执行全文搜索。MongoDB Search 索引指定了搜索行为以及要索引的字段。
样本数据
本指南中的示例使用来自 Atlas 示例数据集的 sample_mflix 数据库中的 movies 集合。要学习如何创建免费的MongoDB Atlas 集群并加载示例数据集,请参阅MongoDB 入门指南。
运行MongoDB搜索查询
本部分介绍如何创建聚合管道以对集合运行MongoDB搜索查询。在管道阶段的数组中,添加 $search 阶段以指定搜索条件。然后,调用 aggregate() 方法并将管道数组作为参数传递。
提示
要了解更多关于聚合操作的信息,请参阅聚合操作指南。
在运行MongoDB 搜索查询之前,您必须在集合上创建MongoDB 搜索索引。要学习如何以编程方式创建MongoDB搜索索引,请参阅索引指南中的MongoDB搜索和MongoDB Vector Search搜索索引部分。
MongoDB搜索示例
此示例通过执行以下操作来运行MongoDB 搜索查询:
创建一个
$search阶段,指示驱动程序查询title字段包含单词"Alabama"的文档创建一个
$project阶段,指示驱动程序在查询结果中包含title字段将管道阶段传递到
aggregate()方法并打印结果
const pipeline = [ { $search: { index: "default", // Replace with your search index name text: { query: "Alabama", path: "title" } } }, { $project: { title: 1 } } ]; const cursor = collection.aggregate(pipeline); for await (const document of cursor) { console.log(document); }
更多信息
要学习有关MongoDB Search 的更多信息,请参阅Atlas文档中的MongoDB Search。
API 文档
要了解有关 aggregate() 方法的更多信息,请参阅 API 文档。