【问题标题】:How to search word or string on all fields in document with MongoDB?如何使用 MongoDB 在文档中的所有字段上搜索单词或字符串?
【发布时间】:2016-05-14 08:22:57
【问题描述】:

我们有一种情况,用户希望有一个“多功能框”来搜索文档中任意位置的单词\短语。

MongoDB 是否能够执行此搜索,还是必须对每个字段进行显式搜索?

【问题讨论】:

    标签: mongodb full-text-search mongodb-query text-search


    【解决方案1】:

    你需要像这样创建一个wildcard text indexes

    db.collection.createIndex( { "$**": "text" } )
    

    您可以使用$text 运算符执行文本搜索。

    如文档中所述:

    此索引允许对所有具有字符串内容的字段进行文本搜索。如果不清楚要在文本索引中包含哪些字段或用于临时查询,这种索引对于高度非结构化数据很有用。

    【讨论】:

    • $text 是搜索整个单词,例如,如果我想搜索 vavalidate switch port,则不是返回。无论如何,我也可以使用$text 搜索单词的一部分。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-25
    • 1970-01-01
    • 2017-04-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多