参考 > 文字搜寻
MongoDB Atlas搜索
Atlas Search使在MongoDB数据之上轻松构建基于关联的快速搜索功能成为可能。立即在MongoDB Atlas(我们完全托管的数据库即服务)上试用。
此示例演示了如何在仅指定文本字段的情况下构建文本索引并使用它来查找咖啡店。
stores
使用以下文档创建一个集合:
MongoDB提供文本索引以支持对字符串内容的文本搜索查询。text
索引可以包含任何值为字符串或字符串元素数组的字段。
要执行文本搜索查询,您text
的集合上必须有一个
索引。一个集合只能有一个
文本搜索索引,但是该索引可以涵盖多个字段。
例如,您可以在mongo
外壳中运行以下命令,以允许在name
和description
字段上进行文本搜索:
$text
运算符¶$text
将使用空格和大多数标点符号作为分隔符来OR
标记搜索字符串,并对搜索字符串中的所有此类标记执行逻辑运算。
例如,您可以使用以下查询从列表“ coffee”,“ shop”和“ java”中查找包含任何术语的所有商店:
您还可以通过将它们括在双引号中来搜索确切的短语。如果$search
字符串包含短语和单个术语,则文本搜索将仅匹配包含短语的文档。
例如,以下将查找包含“咖啡店”的所有文档:
有关更多信息,请参见短语。
要排除一个单词,可以在前面加上一个“ -
”字符。例如,要查找所有包含“ java”或“ shop”但不包含“ coffee”的商店,请使用以下命令: